/*
 * cms.css
 * Consolidatie van cms-no-bootstrap.css en cms-render.css.
 * Dit bestand wordt NA site.css geladen.
 * Gridregels zijn uitsluitend onder .cms-content gescoped.
 */


/* ==========================================================================
   CMS compatibility: containers, grid and legacy helpers
   ========================================================================== */

.cms-content,
.cms-content *,
.cms-content *::before,
.cms-content *::after {
    box-sizing: border-box;
}

.cms-content {
    width: 100%;
    min-width: 0;
    overflow-wrap: break-word;
}

.cms-content .container,
.cms-content .container-fluid {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
}

.cms-content .container {
    max-width: 1170px;
}

.cms-content .container-wide {
    width: 100%;
    max-width: 1800px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
}

.cms-content .row {
    display: flex;
    flex: 0 1 auto;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.cms-content .row::before,
.cms-content .row::after {
    display: none;
}

.cms-content [class*="col-"] {
    position: relative;
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding-right: 15px;
    padding-left: 15px;
}

.cms-content .col-xs-1 { flex: 0 0 8.333333%; width: 8.333333%; max-width: 8.333333%; }
.cms-content .col-xs-2 { flex: 0 0 16.666667%; width: 16.666667%; max-width: 16.666667%; }
.cms-content .col-xs-3 { flex: 0 0 25%; width: 25%; max-width: 25%; }
.cms-content .col-xs-4 { flex: 0 0 33.333333%; width: 33.333333%; max-width: 33.333333%; }
.cms-content .col-xs-5 { flex: 0 0 41.666667%; width: 41.666667%; max-width: 41.666667%; }
.cms-content .col-xs-6 { flex: 0 0 50%; width: 50%; max-width: 50%; }
.cms-content .col-xs-7 { flex: 0 0 58.333333%; width: 58.333333%; max-width: 58.333333%; }
.cms-content .col-xs-8 { flex: 0 0 66.666667%; width: 66.666667%; max-width: 66.666667%; }
.cms-content .col-xs-9 { flex: 0 0 75%; width: 75%; max-width: 75%; }
.cms-content .col-xs-10 { flex: 0 0 83.333333%; width: 83.333333%; max-width: 83.333333%; }
.cms-content .col-xs-11 { flex: 0 0 91.666667%; width: 91.666667%; max-width: 91.666667%; }
.cms-content .col-xs-12 { flex: 0 0 100%; width: 100%; max-width: 100%; }

@media (min-width: 768px) {
    .cms-content .col-sm-1 { flex: 0 0 8.333333%; width: 8.333333%; max-width: 8.333333%; }
    .cms-content .col-sm-2 { flex: 0 0 16.666667%; width: 16.666667%; max-width: 16.666667%; }
    .cms-content .col-sm-3 { flex: 0 0 25%; width: 25%; max-width: 25%; }
    .cms-content .col-sm-4 { flex: 0 0 33.333333%; width: 33.333333%; max-width: 33.333333%; }
    .cms-content .col-sm-5 { flex: 0 0 41.666667%; width: 41.666667%; max-width: 41.666667%; }
    .cms-content .col-sm-6 { flex: 0 0 50%; width: 50%; max-width: 50%; }
    .cms-content .col-sm-7 { flex: 0 0 58.333333%; width: 58.333333%; max-width: 58.333333%; }
    .cms-content .col-sm-8 { flex: 0 0 66.666667%; width: 66.666667%; max-width: 66.666667%; }
    .cms-content .col-sm-9 { flex: 0 0 75%; width: 75%; max-width: 75%; }
    .cms-content .col-sm-10 { flex: 0 0 83.333333%; width: 83.333333%; max-width: 83.333333%; }
    .cms-content .col-sm-11 { flex: 0 0 91.666667%; width: 91.666667%; max-width: 91.666667%; }
    .cms-content .col-sm-12 { flex: 0 0 100%; width: 100%; max-width: 100%; }
}

@media (min-width: 992px) {
    .cms-content .col-md-1 { flex: 0 0 8.333333%; width: 8.333333%; max-width: 8.333333%; }
    .cms-content .col-md-2 { flex: 0 0 16.666667%; width: 16.666667%; max-width: 16.666667%; }
    .cms-content .col-md-3 { flex: 0 0 25%; width: 25%; max-width: 25%; }
    .cms-content .col-md-4 { flex: 0 0 33.333333%; width: 33.333333%; max-width: 33.333333%; }
    .cms-content .col-md-5 { flex: 0 0 41.666667%; width: 41.666667%; max-width: 41.666667%; }
    .cms-content .col-md-6 { flex: 0 0 50%; width: 50%; max-width: 50%; }
    .cms-content .col-md-7 { flex: 0 0 58.333333%; width: 58.333333%; max-width: 58.333333%; }
    .cms-content .col-md-8 { flex: 0 0 66.666667%; width: 66.666667%; max-width: 66.666667%; }
    .cms-content .col-md-9 { flex: 0 0 75%; width: 75%; max-width: 75%; }
    .cms-content .col-md-10 { flex: 0 0 83.333333%; width: 83.333333%; max-width: 83.333333%; }
    .cms-content .col-md-11 { flex: 0 0 91.666667%; width: 91.666667%; max-width: 91.666667%; }
    .cms-content .col-md-12 { flex: 0 0 100%; width: 100%; max-width: 100%; }
}

@media (min-width: 1200px) {
    .cms-content .col-lg-1 { flex: 0 0 8.333333%; width: 8.333333%; max-width: 8.333333%; }
    .cms-content .col-lg-2 { flex: 0 0 16.666667%; width: 16.666667%; max-width: 16.666667%; }
    .cms-content .col-lg-3 { flex: 0 0 25%; width: 25%; max-width: 25%; }
    .cms-content .col-lg-4 { flex: 0 0 33.333333%; width: 33.333333%; max-width: 33.333333%; }
    .cms-content .col-lg-5 { flex: 0 0 41.666667%; width: 41.666667%; max-width: 41.666667%; }
    .cms-content .col-lg-6 { flex: 0 0 50%; width: 50%; max-width: 50%; }
    .cms-content .col-lg-7 { flex: 0 0 58.333333%; width: 58.333333%; max-width: 58.333333%; }
    .cms-content .col-lg-8 { flex: 0 0 66.666667%; width: 66.666667%; max-width: 66.666667%; }
    .cms-content .col-lg-9 { flex: 0 0 75%; width: 75%; max-width: 75%; }
    .cms-content .col-lg-10 { flex: 0 0 83.333333%; width: 83.333333%; max-width: 83.333333%; }
    .cms-content .col-lg-11 { flex: 0 0 91.666667%; width: 91.666667%; max-width: 91.666667%; }
    .cms-content .col-lg-12 { flex: 0 0 100%; width: 100%; max-width: 100%; }
}

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

.cms-content .img-responsive,
.cms-content .img-fluid {
    display: block;
    max-width: 100%;
    height: auto;
}

.cms-content figure { margin: 0; }
.cms-content .text-left { text-align: left; }
.cms-content .text-center { text-align: center; }
.cms-content .text-right { text-align: right; }
.cms-content .pull-left { float: left; }
.cms-content .pull-right { float: right; }
.cms-content .hidden { display: none !important; }

.cms-content .clearfix::after {
    display: table;
    clear: both;
    content: "";
}

.cms-content .btn {
    display: inline-block;
    padding: 9px 16px;
    border: 1px solid transparent;
    border-radius: 4px;
    font: inherit;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
}

.cms-content .btn-default {
    color: #333;
    background: #fff;
    border-color: #ccc;
}

.cms-content .btn-primary {
    color: #fff;
    background: #496b2c;
    border-color: #3d5a25;
}

.cms-content .btn:hover,
.cms-content .btn:focus {
    text-decoration: none;
    filter: brightness(.94);
}

.cms-content .embed-responsive {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding: 0;
    overflow: hidden;
}

.cms-content .embed-responsive-16by9 { padding-bottom: 56.25%; }

.cms-content .embed-responsive iframe,
.cms-content .embed-responsive video,
.cms-content .embed-responsive embed,
.cms-content .embed-responsive object {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

@media (max-width: 767px) {
    .cms-content .container,
    .cms-content .container-fluid,
    .cms-content .container-wide {
        padding-right: 14px;
        padding-left: 14px;
    }

    .cms-content .row {
        margin-right: -8px;
        margin-left: -8px;
    }

    .cms-content [class*="col-"] {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
        padding-right: 8px;
        padding-left: 8px;
    }

    .cms-content .pull-left,
    .cms-content .pull-right {
        float: none;
    }
}

/* ==========================================================================
   CMS renderer layouts
   ========================================================================== */

/*
 * CMS renderer - consolidated
 * Exact duplicate selectors and declarations merged.
 * Later declarations keep precedence; legacy selectors remain available.
 */

/* CMS renderer base */

.cms-par {
    margin-bottom: 32px;
}

.cms-par:last-child {
    margin-bottom: 0;
}

.cms-par:after {
    content: "";
    display: table;
    clear: both;
}

/* Images */

.cms-par-image {
    margin: 0 0 18px 0;
}

.cms-par-image img {
    display: block;
    max-width: 100%;
    height: auto;
}

.cms-par-image figcaption {
    margin-top: 8px;
    color: #777;
    font-size: 13px;
    line-height: 1.4;
}

.cms-par-image-align-left {
    text-align: left;
}

.cms-par-image-align-center {
    text-align: center;
}

.cms-par-image-align-right {
    text-align: right;
}

.cms-par-image-align-center img,
.cms-par-image-align-center figure {
    margin-left: auto;
    margin-right: auto;
}

.cms-par-image-align-right img,
.cms-par-image-align-right figure {
    margin-left: auto;
}

.cms-par-image-small {
    max-width: 280px;
}

.cms-par-image-half {
    max-width: 720px;
}

.cms-par-image-large {
    max-width: 960px;
}

.cms-par-image-full {
    max-width: 100%;
}

.cms-par-image-fixed {
    max-width: 100%;
}

/* Mobile image */

.cms-par-mobile-image {
    display: none;
    margin: 0 0 18px 0;
}

.cms-par-mobile-image img {
    display: block;
    max-width: 100%;
    height: auto;
}

@media (max-width: 767px) {
    .cms-par-mobile-image {
        display: block;
    }

    .cms-par-has-mobile-image .cms-par-image {
        display: none;
    }
}

/* Text block */

.cms-par-text {
    line-height: 1.65;
}

.cms-par-text h1,
.cms-par-text h2,
.cms-par-text h3 {
    margin-top: 0;
}

.cms-par-text p:last-child {
    margin-bottom: 0;
}

/* Links and CTA */

.cms-link-block {
    margin-top: 18px;
}

.cms-link-block img {
    max-width: 100%;
    height: auto;
}

.cms-cta-group {
    margin-top: 18px;
}

.cms-cta-group .cms-cta {
    margin-right: 8px;
    margin-bottom: 8px;
}

.cms-cta {
    display: inline-block;
    white-space: normal;
}

.cms-cta-primary {
    font-weight: 600;
}

.cms-cta-secondary {
    opacity: .9;
}

/* Layout: standard */

.cms-layout-standard {
    margin-bottom: 32px;
}

.cms-layout-standard .row {
    align-items: flex-start;
}

/* Layout: well */


.cms-layout-well .well {
    margin-bottom: 28px;
    padding: 28px;
    border: 1px solid #e5e5e5;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .06);
}

.cms-layout-well .well h1,
.cms-layout-well .well h2,
.cms-layout-well .well h3 {
    margin-top: 0;
}

.cms-layout-well .well p:last-child {
    margin-bottom: 0;
}

/* Layout: kader */

.cms-layout-kader {
    margin: 32px 0;
    padding: 24px;
    border: 2px solid #102f00;
    border-radius: 12px;
    background: #fff;
}

/* Layout: jumbo */

.cms-layout-jumbo,
.cms-layout-jumbo *,
.cms-layout-jumbo *::before,
.cms-layout-jumbo *::after {
    box-sizing: border-box;
}

.cms-layout-jumbo > .container {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0;
}

/* Kaart */

.cms-layout-jumbo .cms-jumbo-card {
    width: 100%;
    overflow: hidden;
    color: #263126;
    background: #fbfcf8;
    border: 1px solid #d5ddd0;
    border-radius: 14px;
    box-shadow: 0 10px 28px rgba(35, 52, 30, 0.08),
            0 2px 8px rgba(35, 52, 30, 0.04);
}

/* Rij en kolommen */

.cms-layout-jumbo .cms-jumbo-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    width: 100%;
    margin: 0;
}

.cms-layout-jumbo .cms-jumbo-row > [class*="col-"] {
    min-width: 0;
}

.cms-layout-jumbo .cms-jumbo-image,
.cms-layout-jumbo .cms-jumbo-text {
    align-self: flex-start;
}

/* Afbeeldingskolom */

.cms-layout-jumbo .cms-jumbo-image {
    display: block;
    min-width: 0;
    padding: 30px;
}

.cms-layout-jumbo .cms-jumbo-image figure,
.cms-layout-jumbo .cms-jumbo-image .cms-par-image {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    aspect-ratio: auto;
    overflow: visible;
    background: transparent;
    border-radius: 0;
}

.cms-layout-jumbo .cms-jumbo-image a,
.cms-layout-jumbo .cms-jumbo-image .cms-par-image-link {
    display: block;
    width: 100%;
    max-width: 100%;
    line-height: 0;
    text-decoration: none;
}

.cms-layout-jumbo .cms-jumbo-image img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
    object-fit: contain;
    object-position: top center;
    border: 0;
    border-radius: 10px;
    box-shadow: 0 6px 18px rgba(25, 40, 20, 0.10);
}

.cms-layout-jumbo .cms-jumbo-image figcaption {
    margin-top: 10px;
    color: #667064;
    font-size: 13px;
    line-height: 1.45;
    text-align: center;
}

/* Tekstkolom */

.cms-layout-jumbo .cms-jumbo-text {
    min-width: 0;
    padding: 32px 36px 36px 22px;
}

.cms-layout-jumbo .cms-jumbo-text > :first-child {
    margin-top: 0;
}

.cms-layout-jumbo .cms-jumbo-text h1,
.cms-layout-jumbo .cms-jumbo-text h2,
.cms-layout-jumbo .cms-jumbo-text h3 {
    margin: 0 0 16px;
    color: #1f3523;
    font-size: clamp(28px, 3.2vw, 42px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -0.02em;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
}

.cms-layout-jumbo .cms-jumbo-text p {
    margin: 0 0 14px;
    color: #344137;
    font-size: 16px;
    line-height: 1.6;
}

.cms-layout-jumbo .cms-jumbo-text p:last-child {
    margin-bottom: 0;
}

.cms-layout-jumbo .cms-jumbo-text ul,
.cms-layout-jumbo .cms-jumbo-text ol {
    margin: 14px 0 16px;
    padding-left: 20px;
}

.cms-layout-jumbo .cms-jumbo-text li {
    margin-bottom: 5px;
    line-height: 1.45;
}

.cms-layout-jumbo .cms-jumbo-text a {
    overflow-wrap: anywhere;
}

/* CTA */

.cms-layout-jumbo .cms-jumbo-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.cms-layout-jumbo .cms-jumbo-actions a,
.cms-layout-jumbo .cms-jumbo-actions .btn,
.cms-layout-jumbo .cms-jumbo-actions .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 18px;
    color: #ffffff;
    background: #426b2b;
    border: 1px solid #365823;
    border-radius: 6px;
    font: inherit;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 4px 12px rgba(54, 88, 35, 0.18);
    cursor: pointer;
}

.cms-layout-jumbo .cms-jumbo-actions a:hover,
.cms-layout-jumbo .cms-jumbo-actions a:focus,
.cms-layout-jumbo .cms-jumbo-actions .btn:hover,
.cms-layout-jumbo .cms-jumbo-actions .btn:focus,
.cms-layout-jumbo .cms-jumbo-actions .button:hover,
.cms-layout-jumbo .cms-jumbo-actions .button:focus {
    color: #ffffff;
    background: #365823;
    border-color: #2f4d1f;
    text-decoration: none;
}

/* Volledige afbeelding boven tekst */

.cms-layout-jumbo.cms-jumbo-full .cms-jumbo-image-full {
    display: block;
    width: 100%;
    padding: 0;
}

.cms-layout-jumbo.cms-jumbo-full .cms-jumbo-image-full figure,
.cms-layout-jumbo.cms-jumbo-full .cms-jumbo-image-full .cms-par-image,
.cms-layout-jumbo.cms-jumbo-full .cms-jumbo-image-full a,
.cms-layout-jumbo.cms-jumbo-full .cms-jumbo-image-full .cms-par-image-link {
    display: block;
    width: 100%;
    max-width: none;
}

.cms-layout-jumbo.cms-jumbo-full .cms-jumbo-image-full img {
    width: 100%;
    max-width: none;
    height: auto;
    border-radius: 0;
    box-shadow: none;
}

.cms-layout-jumbo .cms-jumbo-text-below {
    padding-top: 30px;
}

/* Alleen tekst */

.cms-layout-jumbo .cms-jumbo-text-only {
    width: 100%;
}

/* Mobiel */

@media (max-width: 767px) {
    .cms-layout-jumbo .cms-jumbo-card {
        border-radius: 12px;
    }

    .cms-layout-jumbo .cms-jumbo-row {
        display: flex;
        flex-direction: column;
    }

    .cms-layout-jumbo .cms-jumbo-row > [class*="col-"] {
        width: 100%;
        max-width: none;
    }

    .cms-layout-jumbo .cms-jumbo-image {
        order: 1;
        width: 100%;
        padding: 22px 20px 0;
    }

    .cms-layout-jumbo .cms-jumbo-text {
        order: 2;
        width: 100%;
        padding: 24px 22px 28px;
    }

    .cms-layout-jumbo.cms-jumbo-full .cms-jumbo-image-full {
        padding: 0;
    }

    .cms-layout-jumbo .cms-jumbo-text h1,
    .cms-layout-jumbo .cms-jumbo-text h2,
    .cms-layout-jumbo .cms-jumbo-text h3 {
        font-size: clamp(27px, 8vw, 36px);
    }

    .cms-layout-jumbo .cms-jumbo-text p {
        font-size: 16px;
    }

    .cms-layout-jumbo .cms-jumbo-actions a,
    .cms-layout-jumbo .cms-jumbo-actions .btn,
    .cms-layout-jumbo .cms-jumbo-actions .button {
        width: 100%;
    }
}

/* Layout: color box */

.cms-layout-color-box {
    margin-bottom: 32px;
}

.cms-color-box {
    padding: 26px;
    border-radius: 14px;
    background: #f6f8f2;
}

/* Layout: CTA */

.cms-layout-cta,
.cms-layout-cta2 {
    margin-bottom: 32px;
}

.cms-layout-cta .cms-cta-group,
.cms-layout-cta2 .cms-cta-group {
    margin-top: 22px;
}

/* Layout: media */

.cms-layout-media {
    margin-bottom: 32px;
}

.cms-layout-media .media,
.cms-layout-media .media-body {
    overflow: visible;
}




/* Text on image */

.cms-text-on-image .cms-par-image {
    margin: 0;
}

.cms-text-on-image .cms-par-image img {
    width: 100%;
}

.cms-text-on-image-content {
    position: absolute;
    left: 30px;
    right: 30px;
    bottom: 30px;
    padding: 22px;
    border-radius: 12px;
    background: rgba(255, 255, 255, .88);
}

/* HTML layouts */

.cms-layout-html-wide,
.cms-layout-html-standard {
    margin-bottom: 32px;
}

/* Separator */

.cms-layout-separator {
    margin: 38px 0;
}

.cms-layout-separator .content-separator {
    padding: 32px 0;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
}

/* Responsive */

@media (max-width: 767px) {
    .cms-par {
        margin-bottom: 24px;
    }

    .cms-layout-kader-box,
    .cms-color-box {
        padding: 20px;
        border-radius: 10px;
    }

    .cms-par-image-small,
    .cms-par-image-standard,
    .cms-par-image-half,
    .cms-par-image-large {
        max-width: 100%;
    }

    .cms-text-on-image-content {
        position: static;
        left: auto;
        right: auto;
        bottom: auto;
        border-radius: 0;
        background: #fff;
    }

    .cms-cta-group .cms-cta {
        display: block;
        width: 100%;
        margin-right: 0;
    }
}


.cms-jumbo-image .cms-par-image {
    margin: 0;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 14px;
    background: #e9e9e9;
}

.cms-jumbo-image .cms-par-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cms-text-on-image-bg,
.cms-text-on-image-bg .cms-par-image {
    position: absolute;
    inset: 0;
    margin: 0;
}

.cms-text-on-image-bg .cms-par-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cms-layout-text-on-image {
    position: relative;
    margin-bottom: 36px;
    margin: 42px 0;
}

.cms-text-on-image {
    background: #f3f3f3;
    position: relative;
    overflow: hidden;
    min-height: 420px;
    border-radius: 18px;
    background-color: #f3f3f3;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    box-shadow: 0 12px 34px rgba(0, 0, 0, .08);
}

.cms-text-on-image:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
            90deg,
            rgba(0, 0, 0, .68) 0%,
            rgba(0, 0, 0, .42) 45%,
            rgba(0, 0, 0, .10) 100%
    );
}

.cms-text-on-image-body {
    position: relative;
    z-index: 2;
    max-width: 620px;
    padding: 52px;
    color: #fff;
}

.cms-text-on-image-body h1,
.cms-text-on-image-body h2,
.cms-text-on-image-body h3 {
    margin-top: 0;
    color: #fff;
}

.cms-text-on-image-body p {
    color: #fff;
    font-size: 17px;
    line-height: 1.65;
}

.cms-text-on-image-body .cms-cta-group {
    margin-top: 24px;
}

.cms-text-on-image-body .cms-cta {
    border-color: #fff;
    background: #fff;
    color: #333;
}

@media (max-width: 767px) {
    .cms-layout-text-on-image {
        margin: 28px 0;
    }

    .cms-text-on-image {
        min-height: 0;
        border-radius: 14px;
        background-position: center center;
    }

    .cms-text-on-image-body {
        max-width: none;
        padding: 28px 24px;
    }

    .cms-text-on-image-body h1,
    .cms-text-on-image-body h2,
    .cms-text-on-image-body h3 {
        font-size: 24px;
    }

    .cms-text-on-image-body p {
        font-size: 16px;
    }

    .cms-text-on-image-body .cms-cta {
        display: block;
        width: 100%;
        margin-bottom: 8px;
    }
}

.cms-hero-slider {
    position: relative;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    overflow: hidden;
}

.cms-hero-body {
    color: #fff;
    margin-top: 12px;
}

.cms-hero-body p {
    color: #fff;
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .cms-layout-hero.height-500,
    .cms-layout-hero.height-450,
    .cms-layout-hero.height-400,
    .cms-layout-hero.height-300 {
        min-height: 360px;
    }

    .cms-layout-hero h1 {
        font-size: 30px !important;
    }

    .cms-hero-body {
        font-size: 18px !important;
    }

    .cms-hero-cta .cms-cta {
        display: block;
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
}

.cms-hero-container {
    padding-left: 0;
    padding-right: 0;
}

.cms-layout-hero,
.cms-hero-slider {
    position: relative;
    margin: 0 0 44px 0;
    padding: 0;
    width: 100%;
    overflow: hidden;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

.cms-layout-hero.height-300 {
    min-height: 300px;
}

.cms-layout-hero.height-400 {
    min-height: 400px;
}

.cms-layout-hero.height-500 {
    min-height: 500px;
}

.cms-layout-hero .overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.cms-layout-hero .display-table {
    height: 100%;
    position: relative;
    z-index: 2;
    width: 100%;
    min-height: inherit;
}

.cms-layout-hero .display-table-cell {
    min-height: inherit;
}

.cms-layout-hero h1 {
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.cms-hero-body,
.cms-hero-body p {
    color: #fff;
}

.cms-hero-cta {
    margin-top: 26px;
}

.cms-hero-cta .cms-cta {
    margin: 0 5px 8px 5px;
    padding: 11px 18px;
    border-radius: 4px;
    border-color: #fff;
    background: #fff;
    color: #333;
    font-weight: 600;
}

#footer.gh-footer .footer-logo {
    max-width: 190px;
    height: auto;
    margin-bottom: 24px;
}

#footer.gh-footer address {
    margin-bottom: 0;
}

#footer.gh-footer .footer-sprite {
    margin-bottom: 18px;
    line-height: 1.55;
}

#footer.gh-footer h4 {
    margin-top: 0;
    margin-bottom: 22px;
}

#footer.gh-footer .gh-footer-newsletter {
    margin-top: 28px;
}

#footer.gh-footer .gh-footer-social {
    margin-top: 18px;
}

#footer.gh-footer .gh-footer-mobile-actions {
    padding: 20px;
}

#footer.gh-footer .gh-footer-mobile-actions .btn {
    margin: 0 4px 8px 0;
}

#footer.gh-footer {
    margin-top: 80px;
    color: #c4ddc5;
    background: #06360c;
}

.gh-footer-main {
    padding: 70px 0 58px 0;
    background: #073d0f;
}

.gh-footer-bottom {
    padding: 22px 0;
    color: #bdd8be;
    background: #042d09;
    font-size: 13px;
}

.gh-footer-col {
    margin-bottom: 32px;
}

.gh-footer h4 {
    margin: 0 0 22px 0;
    color: #fff;
    font-size: 16px;
    line-height: 1.35;
    font-weight: 700;
    letter-spacing: .05em;
}

.gh-footer p,
.gh-footer address {
    color: #c4ddc5;
    font-size: 14px;
    line-height: 1.6;
}

.gh-footer a {
    color: #c4ddc5;
    text-decoration: none;
}

.gh-footer a:hover {
    color: #fff;
    text-decoration: none;
}

.gh-footer-logo {
    display: block;
    max-width: 190px;
    height: auto;
    margin: 0 0 26px 0;
}

.gh-footer-address {
    margin: 0;
}

.gh-footer-address p {
    margin: 0 0 20px 0;
}

.gh-footer-news-list {
    margin-bottom: 28px;
}

.gh-footer-news-list ul,
.gh-footer-news-list .footer-links {
    margin: 0;
    padding: 0;
    list-style: none;
}

.gh-footer-news-list li {
    padding: 9px 0;
    border-bottom: 1px solid rgba(255,255,255,.10);
    font-size: 14px;
    line-height: 1.35;
}

.gh-footer-newsletter {
    margin-top: 28px;
}

.gh-footer-newsletter p {
    margin-bottom: 14px;
}

.gh-footer-newsletter-form .input-group-addon {
    color: #c4ddc5;
    background: #032707;
    border-color: #032707;
}

.gh-footer-newsletter-form .form-control {
    height: 40px;
    color: #fff;
    background: #032707;
    border-color: #032707;
    box-shadow: none;
}

.gh-footer-newsletter-form .form-control::placeholder {
    color: #9fbca0;
}

.gh-footer-newsletter-form .btn {
    height: 40px;
    border-color: #5cb85c;
}

.gh-footer-links {
    margin: 0 0 22px 0;
    padding: 0;
}

.gh-footer-links li {
    position: relative;
    padding: 7px 0 7px 18px;
    font-size: 14px;
}

.gh-footer-links li:before {
    content: "›";
    position: absolute;
    left: 0;
    top: 7px;
    color: #fff;
}

.gh-footer-facebook {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 9px 14px;
    border-radius: 4px;
    color: #fff !important;
    background: #5bc0de;
    font-size: 14px;
    line-height: 1;
}

.gh-footer-facebook:hover {
    color: #fff !important;
    background: #31b0d5;
}

.gh-footer-bottom-links span {
    display: inline-block;
    margin: 0 9px;
    color: #bdd8be;
}

.gh-footer-mobile-actions {
    padding: 18px 15px;
    text-align: center;
    background: #042d09;
}

.gh-footer-mobile-actions .btn {
    margin: 0 4px 8px 4px;
}

@media (max-width: 767px) {
    #footer.gh-footer {
        margin-top: 48px;
    }

    .gh-footer-main {
        padding: 46px 0 24px 0;
    }

    .gh-footer-bottom {
        text-align: center;
    }

    .gh-footer-bottom .text-right {
        text-align: center !important;
        margin-top: 10px;
    }

    .gh-footer-logo {
        max-width: 170px;
    }

    .gh-footer-newsletter-form .input-group,
    .gh-footer-newsletter-form .input-group-addon,
    .gh-footer-newsletter-form .form-control,
    .gh-footer-newsletter-form .input-group-btn,
    .gh-footer-newsletter-form .btn {
        display: block;
        width: 100%;
    }

    .gh-footer-newsletter-form .input-group-addon {
        display: none;
    }

    .gh-footer-newsletter-form .form-control {
        margin-bottom: 8px;
    }

    .gh-footer-newsletter-form .btn {
        border-radius: 3px;
    }

    .gh-footer-mobile-actions .btn {
        display: block;
        width: 100%;
        margin: 0 auto 8px auto;
    }
}

.cms-article-standard-v2 {
    background: #fff;
}

.cms-article-heading {
    padding: 48px 0 24px 0;
}

.cms-article-breadcrumb {
    margin: 0 0 24px 0;
    color: #8a8a8a;
    font-size: 13px;
    line-height: 1.4;
}

.cms-article-breadcrumb a {
    color: #7c8f43;
    text-decoration: none;
}

.cms-article-breadcrumb a:hover {
    color: #526226;
    text-decoration: none;
}

.cms-article-breadcrumb span {
    display: inline-block;
    margin: 0 8px;
    color: #b4b4b4;
}

.cms-article-breadcrumb strong {
    color: #555;
    font-weight: 400;
}

.cms-article-header {
    max-width: 900px;
}

.cms-article-header h1 {
    margin: 0 0 18px 0;
    color: #303a30;
    font-size: 42px;
    line-height: 1.15;
    font-weight: 300;
    letter-spacing: .02em;
}

.cms-article-subtitle {
    max-width: 780px;
    margin: 0 0 18px 0;
    color: #5f685f;
    font-size: 19px;
    line-height: 1.6;
    font-weight: 300;
}

.cms-article-subtitle p {
    margin-bottom: 0;
}

.cms-article-meta {
    margin-top: 18px;
    color: #8a8a8a;
    font-size: 13px;
}

.cms-article-meta span {
    display: inline-block;
    margin-right: 18px;
}

.cms-article-meta i {
    margin-right: 6px;
}

.cms-article-media {
    margin: 0 0 36px 0;
}

.cms-article-media figure {
    margin: 0;
}

.cms-article-media img {
    width: 100%;
    height: auto;
    border-radius: 14px;
}

.cms-article-main {
    padding: 20px 0 30px 0;
}

.cms-article-content {
    min-height: 1px;
}

.cms-article-sidebar {
    margin-top: 4px;
}

.cms-readalso-box {
    position: sticky;
    top: 90px;
    padding: 24px;
    border-radius: 14px;
    background: #f6f8f1;
    border: 1px solid #e3e8d8;
}

.cms-readalso-box h4 {
    margin: 0 0 18px 0;
    color: #303a30;
    font-size: 16px;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

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

.cms-readalso-list li {
    margin: 0;
    padding: 10px 0;
    border-bottom: 1px solid #dde4cf;
    font-size: 14px;
    line-height: 1.35;
}

.cms-readalso-list li:last-child {
    border-bottom: 0;
}

.cms-readalso-list a {
    color: #596d2d;
    text-decoration: none;
}

.cms-readalso-list a:hover {
    color: #303a30;
    text-decoration: none;
}

.cms-readalso-list .active span {
    color: #303a30;
    font-weight: 700;
}

@media (max-width: 767px) {
    .cms-article-heading {
        padding: 32px 0 18px 0;
    }

    .cms-article-header h1 {
        font-size: 30px;
    }

    .cms-article-subtitle {
        font-size: 17px;
    }

    .cms-article-media {
        margin-bottom: 24px;
    }

    .cms-article-media img {
        border-radius: 10px;
    }

    .cms-article-sidebar {
        margin-top: 34px;
    }

    .cms-readalso-box {
        position: static;
        padding: 20px;
    }
}

.cms-layout-jumbo {
    width: 100%;
    padding: 0 20px;
    margin: 42px 0;
}

.cms-jumbo-card {
    padding: 34px;
    border-radius: 18px;
    background: #f6f8f1;
    border: 1px solid #e2e8d7;
    box-shadow: 0 14px 38px rgba(0, 0, 0, .06);
    overflow: hidden;
}

.cms-jumbo-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.cms-jumbo-image {
    margin-bottom: 0;
}

.cms-jumbo-image img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    border-radius: 14px;
}

.cms-jumbo-text {
    color: #3f463f;
    font-size: 17px;
    line-height: 1.7;
}

.cms-jumbo-text h1,
.cms-jumbo-text h2,
.cms-jumbo-text h3 {
    font-size: clamp(28px, 3vw, 40px);
    font-weight: 600;
    letter-spacing: -0.02em;
    text-transform: none;
    margin-top: 0;
    margin-bottom: 16px;
    color: #303a30;
    line-height: 1.2;
}

.cms-jumbo-text h2 {
    font-size: 32px;
    font-weight: 600;
}

.cms-jumbo-text p {
    font-size: 18px;
    line-height: 1.65;
    margin-bottom: 16px;
}

.cms-jumbo-text p:last-child {
    margin-bottom: 0;
}

.cms-jumbo-text .btn,
.cms-jumbo-text .cms-cta,
.cms-jumbo-text .cms-cta-group {
    margin-top: 18px;
}

@media (max-width: 767px) {
    .cms-layout-jumbo {
        padding: 0 12px;
        margin: 30px 0;
    }

    .cms-jumbo-card {
        padding: 22px;
        border-radius: 14px;
    }

    .cms-jumbo-row {
        display: block;
    }

    .cms-jumbo-image {
        margin-bottom: 20px;
    }

    .cms-jumbo-text + .cms-jumbo-image {
        margin-top: 20px;
        margin-bottom: 0;
    }

    .cms-jumbo-text {
        font-size: 16px;
        line-height: 1.65;
    }

    .cms-jumbo-text h2 {
        font-size: 26px;
    }
}

.cms-article-gallery {
    background: #fff;
}

.cms-gallery-header {
    padding: 48px 0 24px 0;
}

.cms-gallery-breadcrumb {
    margin: 0 0 22px 0;
    color: #8a8a8a;
    font-size: 13px;
    line-height: 1.4;
}

.cms-gallery-breadcrumb a {
    color: #6c8237;
    text-decoration: none;
}

.cms-gallery-breadcrumb span {
    display: inline-block;
    margin: 0 8px;
    color: #b4b4b4;
}

.cms-gallery-breadcrumb strong {
    color: #555;
    font-weight: 400;
}

.cms-gallery-header h1 {
    max-width: 900px;
    margin: 0 0 18px 0;
    color: #303a30;
    font-size: 42px;
    line-height: 1.15;
    font-weight: 300;
}

.cms-gallery-subtitle {
    max-width: 820px;
    margin: 0 0 18px 0;
    color: #5f685f;
    font-size: 19px;
    line-height: 1.6;
    font-weight: 300;
}

.cms-gallery-meta {
    margin-top: 18px;
    color: #8a8a8a;
    font-size: 13px;
}

.cms-gallery-meta span {
    display: inline-block;
    margin-right: 18px;
}

.cms-gallery-content {
    margin-bottom: 28px;
}

.cms-gallery-section {
    padding: 30px 0 58px 0;
}

.cms-gallery-grid {
    margin-left: -8px;
    margin-right: -8px;
}

.cms-gallery-item {
    padding-left: 8px;
    padding-right: 8px;
    margin-bottom: 16px;
}

.cms-gallery-link {
    display: block;
    overflow: hidden;
    border-radius: 12px;
    background: #f4f4f4;
}

.cms-gallery-link img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform .25s ease;
}

.cms-gallery-link:hover img {
    transform: scale(1.035);
}

.cms-gallery-caption {
    margin-top: 8px;
    color: #5f685f;
    font-size: 13px;
    line-height: 1.4;
}

.cms-gallery-sidebar .cms-readalso-box {
    position: sticky;
    top: 90px;
}

.container-wide {
    width: 100%;
    max-width: 1800px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
}

@media only screen and (max-width: 768px) {
    .cms-layout .row:not(.media) > div {
        margin-bottom: 60px;
    }

    .cms-layout .row.media > div {
        margin-bottom: 100px;
    }

    .cms-layout .row.media figure,
    .cms-layout .row.media video {
        margin-bottom: 0;
    }
}

div.row.media > div {
    margin: 30px 0 20px 0;
}

@media only screen and (max-width: 768px) {
    section div.row>div {
        margin-bottom: 30px;
    }
}


/* HERO */

.cms-layout-hero {
    position: relative;
    width: 100%;
    min-height: 500px;
    margin: 0 0 34px;
    overflow: hidden;
    color: #ffffff;
    background-color: #263126;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.cms-layout-hero,
.cms-layout-hero *,
.cms-layout-hero *::before,
.cms-layout-hero *::after {
    box-sizing: border-box;
}

.cms-layout-hero .cms-hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(
                    180deg,
                    rgba(10, 18, 14, 0.22) 0%,
                    rgba(10, 18, 14, 0.34) 55%,
                    rgba(10, 18, 14, 0.52) 100%
            );
}

.cms-layout-hero .cms-hero-content {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-start;
    width: 100%;
    min-height: 500px;
    padding: 38px 20px;
}

.cms-layout-hero .cms-hero-content > .container {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0;
}

.cms-layout-hero .cms-hero-content-inner {
    width: min(920px, 100%);
    margin: 0 auto;
    padding: 22px 28px 24px;
    color: #ffffff;
    text-align: center;
    background: rgba(13, 23, 17, 0.30);
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(2px);
}

.cms-layout-hero .cms-hero-title {
    margin: 0 0 12px;
    color: #ffffff;
    font-size: clamp(32px, 4.5vw, 56px);
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: 0.01em;
    text-shadow: 0 2px 9px rgba(0, 0, 0, 0.48);
}

.cms-layout-hero .cms-hero-body {
    max-width: 760px;
    margin: 0 auto;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.55;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.46);
}

.cms-layout-hero .cms-hero-body p {
    margin: 0;
}

.cms-layout-hero .cms-hero-body p + p {
    margin-top: 10px;
}

.cms-layout-hero .cms-hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-top: 24px;
}

.cms-layout-hero .cms-hero-actions a,
.cms-layout-hero .cms-hero-actions .btn,
.cms-layout-hero .cms-hero-actions .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 10px 20px;
    color: #ffffff;
    background: #426b2b;
    border: 1px solid #365823;
    border-radius: 6px;
    font: inherit;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    box-shadow: 0 5px 16px rgba(0, 0, 0, 0.20);
}

.cms-layout-hero .cms-hero-actions a:hover,
.cms-layout-hero .cms-hero-actions a:focus,
.cms-layout-hero .cms-hero-actions .btn:hover,
.cms-layout-hero .cms-hero-actions .btn:focus,
.cms-layout-hero .cms-hero-actions .button:hover,
.cms-layout-hero .cms-hero-actions .button:focus {
    color: #ffffff;
    background: #365823;
    border-color: #2f4d1f;
    text-decoration: none;
}

.cms-layout-hero.cms-hero-slider-empty {
    min-height: 0;
    padding: 44px 20px;
    color: #263126;
    background: #f2f3ef;
}

.cms-layout-hero.cms-hero-slider-empty .cms-hero-content-inner {
    color: #263126;
    background: #ffffff;
    border: 1px solid #d9ded6;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.05);
}

.cms-layout-hero.cms-hero-slider-empty .cms-hero-title,
.cms-layout-hero.cms-hero-slider-empty .cms-hero-body {
    color: #263126;
    text-shadow: none;
}

@media (max-width: 991px) {
    .cms-layout-hero,
    .cms-layout-hero .cms-hero-content {
        min-height: 420px;
    }

    .cms-layout-hero .cms-hero-content {
        padding: 28px 18px;
    }

    .cms-layout-hero .cms-hero-content-inner {
        width: min(760px, 100%);
        padding: 18px 22px 20px;
    }
}

@media (max-width: 640px) {
    .cms-layout-hero {
        min-height: 330px;
        margin-bottom: 24px;
    }

    .cms-layout-hero .cms-hero-content {
        align-items: flex-end;
        min-height: 330px;
        padding: 18px 14px;
    }

    .cms-layout-hero .cms-hero-content-inner {
        padding: 15px 16px 17px;
        border-radius: 9px;
    }

    .cms-layout-hero .cms-hero-title {
        margin-bottom: 9px;
        font-size: clamp(28px, 9vw, 39px);
    }

    .cms-layout-hero .cms-hero-body {
        font-size: 15px;
    }

    .cms-layout-hero .cms-hero-actions a,
    .cms-layout-hero .cms-hero-actions .btn,
    .cms-layout-hero .cms-hero-actions .button {
        width: 100%;
    }
}

.cms-layout-image-row {
    width: 100%;
    margin: 30px 0;
    padding: 0 20px;
}

.cms-layout-image-row,
.cms-layout-image-row *,
.cms-layout-image-row *::before,
.cms-layout-image-row *::after {
    box-sizing: border-box;
}

.cms-layout-image-row > .container {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0;
}

/* Grid */

.cms-layout-image-row .cms-image-row {
    display: grid;
    align-items: stretch;
    gap: 22px;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
}

/*--cms-image-row-first-width wordt in CFML gezet,
    bijvoorbeeld 50%, 41.667%, 33.333%, 25%.*/

.cms-layout-image-row .cms-image-row-2 {
    grid-template-columns: minmax(0, var(--cms-image-row-first-width, 50%))
        minmax(0, 1fr);
}

.cms-layout-image-row .cms-image-row-3 {
    grid-template-columns: minmax(0, var(--cms-image-row-first-width, 33.333%))
        repeat(2, minmax(0, 1fr));
}

/* Algemene image-items */

.cms-layout-image-row .cms-image-row-item {
    min-width: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: #f4f5f2;
    border: 1px solid #dce1d9;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
}

/* Algemene CMS image-regels binnen deze layout neutraliseren */

.cms-layout-image-row .cms-image-row-item figure,
.cms-layout-image-row .cms-image-row-item .cms-par-image {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    aspect-ratio: auto;
    overflow: hidden;
    background: transparent;
    border: 0;
    border-radius: 0;
}

/* Eerste afbeelding bepaalt de hoogte */

.cms-layout-image-row .cms-image-row-reference {
    align-self: start;
}

.cms-layout-image-row .cms-image-row-reference img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    object-fit: contain;
    object-position: center top;
    border: 0;
    border-radius: 0;
}

/* Tweede en derde afbeelding vullen dezelfde rijhoogte */

.cms-layout-image-row .cms-image-row-fill {
    position: relative;
    min-width: 0;
    min-height: 0;
}

.cms-layout-image-row .cms-image-row-fill > img,
.cms-layout-image-row .cms-image-row-fill > .cms-image-row-link {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
}

.cms-layout-image-row .cms-image-row-link {
    max-width: 100%;
    line-height: 0;
    text-decoration: none;
}

.cms-layout-image-row .cms-image-row-fill img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    object-fit: cover;
    object-position: center center;
    border: 0;
    border-radius: 0;
}

/* Captions */

.cms-layout-image-row figcaption {
    padding: 10px 14px;
    color: #596258;
    background: #f7f8f5;
    border-top: 1px solid #dfe3dc;
    font-size: 14px;
    line-height: 1.45;
}

/* Tekst onder de afbeeldingen */

.cms-layout-image-row .cms-image-row-text {
    max-width: 900px;
    margin: 24px auto 0;
    color: #333333;
    font-size: 16px;
    line-height: 1.6;
}

.cms-layout-image-row .cms-image-row-text > :first-child {
    margin-top: 0;
}

.cms-layout-image-row .cms-image-row-text > :last-child {
    margin-bottom: 0;
}

.cms-layout-image-row .cms-image-row-text h1,
.cms-layout-image-row .cms-image-row-text h2,
.cms-layout-image-row .cms-image-row-text h3 {
    color: #263626;
}

.cms-layout-image-row .cms-image-row-text a {
    overflow-wrap: anywhere;
}

/* CTA */

.cms-layout-image-row .cms-image-row-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    max-width: 900px;
    margin: 22px auto 0;
}

.cms-layout-image-row .cms-image-row-actions a,
.cms-layout-image-row .cms-image-row-actions .btn,
.cms-layout-image-row .cms-image-row-actions .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 18px;
    color: #ffffff;
    background: #426b2b;
    border: 1px solid #365823;
    border-radius: 6px;
    font: inherit;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}

.cms-layout-image-row .cms-image-row-actions a:hover,
.cms-layout-image-row .cms-image-row-actions a:focus,
.cms-layout-image-row .cms-image-row-actions .btn:hover,
.cms-layout-image-row .cms-image-row-actions .btn:focus,
.cms-layout-image-row .cms-image-row-actions .button:hover,
.cms-layout-image-row .cms-image-row-actions .button:focus {
    color: #ffffff;
    background: #365823;
    border-color: #2f4d1f;
    text-decoration: none;
}

/* Tablet */

@media (max-width: 991px) {
    .cms-layout-image-row {
        margin: 26px 0;
        padding: 0 16px;
    }

    .cms-layout-image-row .cms-image-row {
        gap: 18px;
    }
}

/* Mobiel */

@media (max-width: 767px) {
    .cms-layout-image-row {
        margin: 22px 0;
        padding: 0 14px;
    }

    .cms-layout-image-row .cms-image-row-2,
    .cms-layout-image-row .cms-image-row-3 {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }

    /*Op mobiel bepaalt afbeelding 1 niet langer de hoogte
        van de andere afbeeldingen.*/

    .cms-layout-image-row .cms-image-row-fill {
        position: static;
    }

    .cms-layout-image-row .cms-image-row-fill > img,
    .cms-layout-image-row .cms-image-row-fill > .cms-image-row-link {
        position: static;
        inset: auto;
        width: 100%;
        height: auto;
    }

    .cms-layout-image-row .cms-image-row-fill img {
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    .cms-layout-image-row .cms-image-row-item {
        border-radius: 10px;
    }

    .cms-layout-image-row .cms-image-row-text {
        margin-top: 20px;
        font-size: 15px;
    }

    .cms-layout-image-row .cms-image-row-actions {
        margin-top: 18px;
    }

    .cms-layout-image-row .cms-image-row-actions a,
    .cms-layout-image-row .cms-image-row-actions .btn,
    .cms-layout-image-row .cms-image-row-actions .button {
        width: 100%;
    }
}

.cms-layout-image-row-wide {
    width: 100%;
    margin: 30px 0;
    padding: 0 24px;
}

.cms-layout-image-row.cms-layout-image-row-wide > .container {
    max-width: 1800px;
}

.site-footer,
.site-footer *,
.site-footer *::before,
.site-footer *::after {
    box-sizing: border-box;
}

.site-footer {
    width: 100%;
    margin: 0;
    color: #303630;
    background: #ffffff;
    border-top: 1px solid #d9ddd7;
}

.site-footer-inner {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr)
        minmax(0, 1fr)
        minmax(0, 0.9fr);
    gap: 54px;
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 38px 24px 34px;
}

.site-footer-block {
    min-width: 0;
}

.site-footer-title {
    margin: 0 0 14px;
    color: #29352b;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.35;
}

.site-footer p,
.site-footer address {
    margin: 0 0 12px;
    font-size: 15px;
    line-height: 1.55;
}

.site-footer address {
    font-style: normal;
}

.site-footer p:last-child,
.site-footer address:last-child {
    margin-bottom: 0;
}

.site-footer a {
    color: #006fbd;
    text-decoration: none;
}

.site-footer a:hover,
.site-footer a:focus {
    color: #365f2a;
    text-decoration: underline;
}

.site-footer-shop {
    text-align: right;
}

.site-footer-shop-link a {
    font-size: 17px;
    font-weight: 700;
}

.site-footer-credit {
    margin-top: 26px !important;
}

.site-footer-copyright {
    color: #596159;
    font-size: 13px !important;
}

.site-footer-top-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    margin-top: 10px;
    padding: 8px 12px;
    color: #34442f !important;
    background: #f7f8f5;
    border: 1px solid #ccd2c9;
    border-radius: 5px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none !important;
}

.site-footer-top-link:hover,
.site-footer-top-link:focus {
    color: #ffffff !important;
    background: #426b2b;
    border-color: #365823;
}

/* Tablet */

@media (max-width: 900px) {
    .site-footer-inner {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 34px 42px;
    }

    .site-footer-shop {
        grid-column: 1 / -1;
        text-align: left;
    }

    .site-footer-credit {
        margin-top: 18px !important;
    }
}

/* Mobiel */

@media (max-width: 640px) {
    .site-footer-inner {
        grid-template-columns: minmax(0, 1fr);
        gap: 28px;
        padding: 30px 18px 28px;
    }

    .site-footer-shop {
        grid-column: auto;
    }

    .site-footer-title {
        font-size: 15px;
    }

    .site-footer p,
    .site-footer address {
        font-size: 14px;
    }

    .site-footer-top-link {
        width: 100%;
        margin-top: 14px;
    }
}

/* Lees meer / Lees ook cards onder artikel */

.cms-readalso {
    width: 100%;
    margin-top: 48px;
    padding: 38px 20px 46px;
    background: #f1f2ef;
    border-top: 1px solid #dde1da;
}

.cms-readalso,
.cms-readalso *,
.cms-readalso *::before,
.cms-readalso *::after {
    box-sizing: border-box;
}

.cms-readalso > .container {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0;
}

.cms-readalso-title {
    margin: 0 0 24px;
    color: #263626;
    font-size: 28px;
    font-weight: 600;
    line-height: 1.2;
}

.cms-readalso-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 24px;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.cms-readalso-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    height: 100%;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid #d9ded6;
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
}

.cms-readalso-image-link {
    display: block;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    text-decoration: none;
}

.cms-readalso-image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 210px;
    margin: 0;
    object-fit: cover;
    object-position: center;
    border: 0;
    border-radius: 0;
}

.cms-readalso-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
    padding: 22px 22px 24px;
}

.cms-readalso-card-title {
    margin: 0 0 14px;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.25;
    overflow-wrap: normal;
    word-break: normal;
}

.cms-readalso-card-title a {
    color: #2d3b2d;
    text-decoration: none;
}

.cms-readalso-card-title a:hover,
.cms-readalso-card-title a:focus {
    color: #426b2b;
    text-decoration: underline;
}

.cms-readalso-teaser {
    min-width: 0;
    color: #394139;
    font-size: 15px;
    line-height: 1.55;
}

.cms-readalso-teaser p {
    margin: 0 0 12px;
}

.cms-readalso-teaser p:last-child {
    margin-bottom: 0;
}

.cms-readalso-actions {
    margin-top: auto;
    padding-top: 20px;
}

.cms-readalso-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 9px 16px;
    color: #ffffff !important;
    background: #426b2b;
    border: 1px solid #365823;
    border-radius: 5px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none !important;
}

.cms-readalso-button:hover,
.cms-readalso-button:focus {
    color: #ffffff !important;
    background: #365823;
    text-decoration: none;
}

@media (max-width: 991px) {
    .cms-readalso-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .cms-readalso {
        margin-top: 32px;
        padding: 30px 14px 36px;
    }

    .cms-readalso-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
    }

    .cms-readalso-image {
        height: auto;
        aspect-ratio: 16 / 10;
    }

    .cms-readalso-body {
        padding: 20px;
    }

    .cms-readalso-title {
        margin-bottom: 20px;
        font-size: 25px;
    }

    .cms-readalso-button {
        width: 100%;
    }
}

/* Layout: well 18/7 */

.cms-layout-well {
    width: 100%;
    margin: 28px 0;
    padding: 0 20px;
}

.cms-layout-well,
.cms-layout-well *,
.cms-layout-well *::before,
.cms-layout-well *::after {
    box-sizing: border-box;
}

.cms-layout-well > .container {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0;
}

/* Ondersteunt zowel markup met .well als zonder extra .well-wrapper */

.cms-layout-well .well,
.cms-layout-well .cms-well-card {
    width: 100%;
    margin: 0;
    padding: 28px;

    color: #303a30;
    background: #ffffff;

    border: 1px solid #dfe4dc;
    border-radius: 14px;

    box-shadow:
            0 8px 24px rgba(35, 52, 30, 0.06),
            0 2px 7px rgba(35, 52, 30, 0.03);
}

/* Wanneer de renderer geen .well of .cms-well-card rond de row zet */

.cms-layout-well > .container > .cms-well-row {
    padding: 28px;

    background: #ffffff;
    border: 1px solid #dfe4dc;
    border-radius: 14px;

    box-shadow:
            0 8px 24px rgba(35, 52, 30, 0.06),
            0 2px 7px rgba(35, 52, 30, 0.03);
}

.cms-layout-well .cms-well-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;

    width: 100%;
    margin: 0;
}

.cms-layout-well .cms-well-row > [class*="col-"] {
    min-width: 0;
}

.cms-layout-well .cms-well-image,
.cms-layout-well .cms-well-text {
    align-self: flex-start;
    min-width: 0;
}

/* Afbeelding */

.cms-layout-well .cms-well-image figure,
.cms-layout-well .cms-well-image .cms-par-image {
    display: block;

    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;
    background: #f4f5f2;
    border-radius: 10px;
}

.cms-layout-well .cms-well-image a,
.cms-layout-well .cms-well-image .cms-par-image-link {
    display: block;
    width: 100%;
    line-height: 0;
}

.cms-layout-well .cms-well-image img {
    display: block;

    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;

    object-fit: cover;
    object-position: center;

    border: 0;
    border-radius: 10px;
}

.cms-layout-well .cms-well-image figcaption {
    margin-top: 8px;

    color: #667064;

    font-size: 13px;
    line-height: 1.4;
}

/* Tekst */

.cms-layout-well .cms-well-text {
    padding-top: 2px;
}

.cms-layout-well .cms-well-text > :first-child {
    margin-top: 0;
}

.cms-layout-well .cms-well-text > :last-child {
    margin-bottom: 0;
}

.cms-layout-well .cms-well-text h1,
.cms-layout-well .cms-well-text h2,
.cms-layout-well .cms-well-text h3 {
    margin: 0 0 14px;

    color: #263626;

    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: 600;
    line-height: 1.18;
    letter-spacing: -0.015em;

    text-transform: none;
}

.cms-layout-well .cms-well-text p {
    margin: 0 0 14px;

    color: #3f493f;

    font-size: 16px;
    line-height: 1.6;
}

.cms-layout-well .cms-well-text ul,
.cms-layout-well .cms-well-text ol {
    margin: 12px 0 16px;
    padding-left: 20px;
}

.cms-layout-well .cms-well-text li {
    margin-bottom: 5px;

    font-size: 15px;
    line-height: 1.5;
}

/* CTA */

.cms-layout-well .cms-cta-group,
.cms-layout-well .cms-well-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;

    margin-top: 18px;
}

.cms-layout-well .cms-cta,
.cms-layout-well .cms-well-actions a,
.cms-layout-well .cms-well-actions .btn,
.cms-layout-well .cms-well-actions .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 42px;
    padding: 9px 16px;

    color: #ffffff;
    background: #426b2b;

    border: 1px solid #365823;
    border-radius: 5px;

    font: inherit;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
}

.cms-layout-well .cms-cta:hover,
.cms-layout-well .cms-cta:focus,
.cms-layout-well .cms-well-actions a:hover,
.cms-layout-well .cms-well-actions a:focus {
    color: #ffffff;
    background: #365823;
    text-decoration: none;
}

/* Afwisselend beeld links/rechts blijft door CMS-kolommen bepaald */

@media (max-width: 767px) {
    .cms-layout-well {
        margin: 22px 0;
        padding: 0 14px;
    }

    .cms-layout-well .well,
    .cms-layout-well .cms-well-card,
    .cms-layout-well > .container > .cms-well-row {
        padding: 20px;
        border-radius: 11px;
    }

    .cms-layout-well .cms-well-row {
        flex-direction: column;
    }

    .cms-layout-well .cms-well-row > [class*="col-"] {
        width: 100%;
        max-width: 100%;
        flex-basis: 100%;
    }

    .cms-layout-well .cms-well-image {
        order: 1;
        margin-bottom: 18px;
    }

    .cms-layout-well .cms-well-text {
        order: 2;
        padding-top: 0;
    }

    .cms-layout-well .cms-well-text h1,
    .cms-layout-well .cms-well-text h2,
    .cms-layout-well .cms-well-text h3 {
        font-size: 24px;
    }

    .cms-layout-well .cms-cta,
    .cms-layout-well .cms-well-actions a,
    .cms-layout-well .cms-well-actions .btn,
    .cms-layout-well .cms-well-actions .button {
        width: 100%;
    }
}

/* Quote-layout  18/07*/
blockquote.cms-layout-quote {
    position: relative;

    max-width: 900px;
    margin: 48px auto;
    padding: 26px 34px 24px 80px;

    color: #364036;
    background: #f7f8f5;

    border: 0;
    border-left: 5px solid #7d9a58;
    border-radius: 10px;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 21px;
    font-style: italic;
    line-height: 1.6;

    box-shadow: 0 8px 24px rgba(35, 52, 30, 0.06);
}

blockquote.cms-layout-quote::before {
    position: absolute;
    top: 12px;
    left: 14px;

    color: rgba(66, 107, 43, 0.30);

    font-family: Georgia, "Times New Roman", serif;
    font-size: 54px;
    font-weight: 700;
    line-height: 1;

    content: "\201C";
}

blockquote.cms-layout-quote p {
    margin: 0 0 10px;
}

blockquote.cms-layout-quote p:last-child {
    margin-bottom: 0;
}

blockquote.cms-layout-quote cite,
blockquote.cms-layout-quote .quotesource {
    display: block;
    margin-top: 14px;

    color: #687268;

    font-family: inherit;
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
}

@media (max-width: 767px) {
    blockquote.cms-layout-quote {
        margin: 28px 14px;
        padding: 22px 22px 20px 36px;

        font-size: 18px;
        line-height: 1.55;
    }

    blockquote.cms-layout-quote::before {
        top: 10px;
        left: 10px;
        font-size: 44px;
    }
}

/* Well-groep */

.cms-layout-well {
    width: 100%;
    margin: 30px 0;
    padding: 0 20px;
}

.cms-layout-well > .container {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0;
}

.cms-layout-well .well,
.cms-layout-well > .container > .cms-well-row {
    width: 100%;
    margin: 0;
    padding: 0;

    background: #ffffff;
    border: 0;
    border-radius: 14px;

    box-shadow: none;
}

.cms-layout-well .cms-well-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;

    width: 100%;
    margin: 0 0px;
}

.cms-layout-well .cms-well-row > [class*="col-"] {
    min-width: 0;
    padding-right: 15px;
    padding-left: 15px;
}

.cms-layout-well .cms-well-image,
.cms-layout-well .cms-well-text {
    align-self: flex-start;
}

/* Afbeelding */
.cms-layout-well .cms-well-image figure,
.cms-layout-well .cms-well-image .cms-par-image {
    display: block;

    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;

    overflow: visible;
    background: transparent;
    border-radius: 12px;
}

.cms-layout-well .cms-well-image a,
.cms-layout-well .cms-well-image .cms-par-image-link {
    display: block;
    width: 100%;
    max-width: 100%;

    line-height: 0;
    text-decoration: none;
}

.cms-layout-well .cms-well-image img {
    display: block;

    width: 100%;
    max-width: 100%;
    height: auto;

    margin: 0;
    padding: 0;

    object-fit: initial;
    object-position: initial;

    border: 0;
    border-radius: 12px;
}

/* Tekst */

.cms-layout-well .cms-well-text {
    padding-top: 4px;
}

.cms-layout-well .cms-well-text > :first-child {
    margin-top: 0;
}

.cms-layout-well .cms-well-text h1,
.cms-layout-well .cms-well-text h2,
.cms-layout-well .cms-well-text h3 {
    margin: 0 0 14px;

    color: #263626;

    font-size: clamp(26px, 2.5vw, 34px);
    font-weight: 600;
    line-height: 1.18;
    letter-spacing: -0.015em;
    text-transform: none;
}

.cms-layout-well .cms-well-text p {
    margin: 0 0 14px;

    color: #3f493f;

    font-size: 16px;
    line-height: 1.6;
}

.cms-layout-well .cms-well-text ul,
.cms-layout-well .cms-well-text ol {
    margin: 12px 0 0;
    padding-left: 20px;
}

.cms-layout-well .cms-well-text li {
    margin-bottom: 6px;

    font-size: 15px;
    line-height: 1.45;
}

/* Afstand tussen opeenvolgende wells */

.cms-layout-well + .cms-layout-well {
    margin-top: 36px;
}

/* Mobiel */

@media (max-width: 767px) {
    .cms-layout-well {
        margin: 24px 0;
        padding: 0 14px;
    }

    .cms-layout-well .cms-well-row {
        flex-direction: column;
        margin: 0;
    }

    .cms-layout-well .cms-well-row > [class*="col-"] {
        width: 100%;
        max-width: 100%;
        flex-basis: 100%;

        padding: 0;
    }

    .cms-layout-well .cms-well-image {
        order: 1;
        margin-bottom: 18px;
    }

    .cms-layout-well .cms-well-text {
        order: 2;
        padding-top: 0;
    }

    .cms-layout-well .cms-well-image img {
        width: 100%;
        height: auto;
    }

    .cms-layout-well .cms-well-text h1,
    .cms-layout-well .cms-well-text h2,
    .cms-layout-well .cms-well-text h3 {
        font-size: 25px;
    }
}

.site-header {
    min-height: 72px;
    background: #ffffff;
    border-bottom: 1px solid #dde1da;
}

.site-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;

    min-height: 72px;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 20px;
}

.site-logo img {
    display: block;
    width: auto;
    max-width: 245px;
    max-height: 58px;
}

.site-nav {
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
}

.site-nav ul {
    display: flex;
    align-items: center;
    gap: clamp(30px, 5vw, 72px);

    margin: 0;
    padding: 0;
    list-style: none;
}

.site-nav a {
    display: block;
    padding: 25px 0 22px;

    color: #2f352f;

    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.015em;
    text-decoration: none;
}

.site-nav a:hover,
.site-nav a:focus,
.site-nav a.active {
    color: #426b2b;
    text-decoration: none;
}

.cms-layout-hero {
    min-height: 430px;
    margin-bottom: 0;
}

.cms-layout-hero .cms-hero-content {
    align-items: flex-start;
    min-height: 430px;
    padding: 34px 20px;
}

.cms-layout-hero .cms-hero-content-inner {
    width: min(780px, 100%);
    padding: 22px 30px 24px;

    background: rgba(13, 23, 17, 0.42);
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 11px;

    backdrop-filter: blur(2px);
}

.cms-layout-hero .cms-hero-title {
    margin: 0;

    font-size: clamp(38px, 4vw, 54px);
    font-weight: 500;
    line-height: 1.03;
    letter-spacing: 0.01em;
}

.cms-layout-jumbo {
    margin-top: 42px;
    margin-bottom: 48px;
}

.cms-article-standard-v2 .cms-article-body {
    display: flow-root;
    background: #ffffff;
}

/* TILE LIST 18/07 */

.cms-layout-tile-list {
    width: 100%;
    margin: 42px 0;
    padding: 0 20px;
}

.cms-layout-tile-list,
.cms-layout-tile-list *,
.cms-layout-tile-list *::before,
.cms-layout-tile-list *::after {
    box-sizing: border-box;
}

.cms-layout-tile-list > .container {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0;
}

.cms-layout-tile-list .cms-tile-grid,
.cms-layout-tile-list .row.cms-tile-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 26px;

    width: 100%;
    margin: 0;
    padding: 0;
}

.cms-layout-tile-list .cms-tile-grid > .cms-layout-tile,
.cms-layout-tile-list .cms-tile-grid > .cms-tile,
.cms-layout-tile-list .cms-tile-grid > [class*="col-"] {
    display: block;

    width: auto !important;
    max-width: none !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;

    float: none !important;
}

.cms-layout-tile-list .cms-tile-card,
.cms-layout-tile-list .cms-layout-tile-inner {
    display: flex;
    flex-direction: column;

    width: 100%;
    min-width: 0;
    height: 100%;
    overflow: hidden;

    background: #ffffff;
    border: 1px solid #d9ded6;
    border-radius: 14px;

    box-shadow: 0 7px 22px rgba(35, 52, 30, 0.07);

    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            border-color 0.18s ease;
}

.cms-layout-tile-list .cms-tile-card:hover,
.cms-layout-tile-list .cms-layout-tile-inner:hover {
    transform: translateY(-3px);
    border-color: #c7d1c1;
    box-shadow: 0 14px 32px rgba(35, 52, 30, 0.11);
}

/* Image */

.cms-layout-tile-list .cms-tile-media {
    width: 100%;
    overflow: hidden;

    background: #f3f5f1;
    border-bottom: 1px solid #e1e5de;
}

.cms-layout-tile-list .cms-tile-media figure,
.cms-layout-tile-list .cms-tile-media .cms-par-image {
    display: block;

    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;

    overflow: hidden;
    background: transparent;
    border: 0;
    border-radius: 0;
}

.cms-layout-tile-list .cms-tile-media a,
.cms-layout-tile-list .cms-tile-media .cms-par-image-link {
    display: block;
    width: 100%;
    line-height: 0;
}

.cms-layout-tile-list .cms-tile-media img {
    display: block;

    width: 100%;
    max-width: 100%;
    height: 220px;
    margin: 0;

    object-fit: cover;
    object-position: center;

    border: 0;
    border-radius: 0;

    transition: transform 0.25s ease;
}

.cms-layout-tile-list .cms-tile-card:hover .cms-tile-media img,
.cms-layout-tile-list .cms-layout-tile-inner:hover .cms-tile-media img {
    transform: scale(1.025);
}

/* Body */

.cms-layout-tile-list .cms-tile-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;

    min-width: 0;
    padding: 24px 24px 26px;
}

.cms-layout-tile-list .cms-tile-text {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.cms-layout-tile-list .cms-tile-text h1,
.cms-layout-tile-list .cms-tile-text h2,
.cms-layout-tile-list .cms-tile-text h3 {
    margin: 0 0 16px;

    color: #263626;

    font-size: clamp(23px, 2vw, 28px);
    font-weight: 600;
    line-height: 1.16;
    letter-spacing: -0.015em;

    text-transform: none;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: auto;
}

.cms-layout-tile-list .cms-tile-text p {
    margin: 0 0 14px;

    color: #414a41;

    font-size: 15px;
    line-height: 1.58;
}

.cms-layout-tile-list .cms-tile-text p:last-child {
    margin-bottom: 0;
}

/* CTA */

.cms-layout-tile-list .cms-tile-actions,
.cms-layout-tile-list .cms-cta-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;

    margin-top: auto;
    padding-top: 20px;
}

.cms-layout-tile-list .cms-tile-actions a,
.cms-layout-tile-list .cms-cta-group .cms-cta,
.cms-layout-tile-list .cms-tile .btn,
.cms-layout-tile-list .cms-tile .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 42px;
    padding: 9px 15px;

    color: #ffffff;
    background: #426b2b;

    border: 1px solid #365823;
    border-radius: 5px;

    font: inherit;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
}

.cms-layout-tile-list .cms-tile-actions a:hover,
.cms-layout-tile-list .cms-cta-group .cms-cta:hover,
.cms-layout-tile-list .cms-tile .btn:hover,
.cms-layout-tile-list .cms-tile .button:hover {
    color: #ffffff;
    background: #365823;
    text-decoration: none;
}

/* Twee kolommen op tablet */

@media (max-width: 991px) {
    .cms-layout-tile-list .cms-tile-grid,
    .cms-layout-tile-list .row.cms-tile-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Eén kolom op mobiel */

@media (max-width: 767px) {
    .cms-layout-tile-list {
        margin: 30px 0;
        padding: 0 14px;
    }

    .cms-layout-tile-list .cms-tile-grid,
    .cms-layout-tile-list .row.cms-tile-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
    }

    .cms-layout-tile-list .cms-tile-media img {
        height: auto;
        aspect-ratio: 16 / 10;
    }

    .cms-layout-tile-list .cms-tile-body {
        padding: 21px 20px 23px;
    }

    .cms-layout-tile-list .cms-tile-text h1,
    .cms-layout-tile-list .cms-tile-text h2,
    .cms-layout-tile-list .cms-tile-text h3 {
        font-size: 24px;
    }

    .cms-layout-tile-list .cms-tile-actions a,
    .cms-layout-tile-list .cms-cta-group .cms-cta,
    .cms-layout-tile-list .cms-tile .btn,
    .cms-layout-tile-list .cms-tile .button {
        width: 100%;
    }
}

/* Page slider als embedded gallery */

.cms-layout-page-slider {
    width: 100%;
    margin: 42px 0;
    padding: 0 20px;
}

.cms-layout-page-slider,
.cms-layout-page-slider *,
.cms-layout-page-slider *::before,
.cms-layout-page-slider *::after {
    box-sizing: border-box;
}

.cms-layout-page-slider > .container {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 0;
}

.cms-layout-page-slider .cms-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: start;
    gap: 18px;

    width: 100%;
    margin: 0;
    padding: 0;
}

.cms-layout-page-slider .cms-gallery-item {
    min-width: 0;
    margin: 0;
    padding: 0;
}

.cms-layout-page-slider .cms-gallery-link {
    display: block;
    width: 100%;
    overflow: hidden;

    background: #f3f5f1;
    border-radius: 12px;

    line-height: 0;
    text-decoration: none;
}

.cms-layout-page-slider .cms-gallery-link img {
    display: block;

    width: 100%;
    max-width: 100%;
    height: 220px;
    margin: 0;

    object-fit: cover;
    object-position: center;

    border: 0;
    border-radius: 0;

    transition: transform 0.25s ease;
}

.cms-layout-page-slider .cms-gallery-link:hover img,
.cms-layout-page-slider .cms-gallery-link:focus img {
    transform: scale(1.035);
}

.cms-layout-page-slider .cms-gallery-caption {
    padding: 10px 4px 0;

    color: #4b554b;

    font-size: 14px;
    line-height: 1.4;
}

@media (max-width: 991px) {
    .cms-layout-page-slider .cms-gallery-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .cms-layout-page-slider {
        margin: 30px 0;
        padding: 0 14px;
    }

    .cms-layout-page-slider .cms-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .cms-layout-page-slider .cms-gallery-link img {
        height: auto;
        aspect-ratio: 4 / 3;
    }
}

@media (max-width: 420px) {
    .cms-layout-page-slider .cms-gallery-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

.cms-layout-cta {
    width: 100%;
    margin: 50px 0 58px;
    padding: 0 20px;
}

.cms-layout-cta .cms-cta-inner {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
    padding: 40px 44px;

    color: #fff;
    background:
            radial-gradient(
                    circle at 100% 0,
                    rgba(255,255,255,.12),
                    transparent 38%
            ),
            linear-gradient(
                    135deg,
                    #2e5324 0%,
                    #426b2b 58%,
                    #547d37 100%
            );

    border: 1px solid #294c20;
    border-radius: 16px;

    box-shadow:
            0 18px 42px rgba(35,66,28,.20),
            0 5px 14px rgba(35,66,28,.12);
}

.cms-layout-cta .cms-cta-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;

    margin-right: -15px;
    margin-left: -15px;
}

.cms-layout-cta .cms-cta-row > [class*="col-"] {
    min-width: 0;
    padding-right: 15px;
    padding-left: 15px;
}

.cms-layout-cta .cms-cta-content,
.cms-layout-cta .cms-cta-media {
    align-self: flex-start;
}

.cms-layout-cta .cms-cta-text h1,
.cms-layout-cta .cms-cta-text h2,
.cms-layout-cta .cms-cta-text h3 {
    margin: 0 0 12px;

    color: #fff;

    font-size: clamp(27px, 2.8vw, 36px);
    font-weight: 650;
    line-height: 1.16;
    text-transform: none;
}

.cms-layout-cta .cms-cta-text p {
    margin: 0 0 12px;

    color: rgba(255,255,255,.92);

    font-size: 17px;
    line-height: 1.6;
}

.cms-layout-cta .cms-cta-media figure,
.cms-layout-cta .cms-cta-media .cms-par-image {
    width: 100%;
    max-width: 100%;
    margin: 0;
    overflow: hidden;

    border: 2px solid rgba(255,255,255,.35);
    border-radius: 12px;

    box-shadow: 0 9px 24px rgba(0,0,0,.18);
}

.cms-layout-cta .cms-cta-media a,
.cms-layout-cta .cms-cta-media .cms-par-image-link {
    display: block;
    width: 100%;
    line-height: 0;
}

.cms-layout-cta .cms-cta-media img {
    display: block;

    width: 100%;
    max-width: 100%;
    height: auto;

    margin: 0;
    border: 0;
    border-radius: 10px;
}

.cms-layout-cta .cms-cta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;

    margin-top: 24px;
}

.cms-layout-cta .cms-cta-actions a,
.cms-layout-cta .cms-cta-actions .btn,
.cms-layout-cta .cms-cta-actions .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 46px;
    padding: 11px 20px;

    color: #294820 !important;
    background: #fff;

    border: 1px solid #fff;
    border-radius: 7px;

    font-weight: 700;
    text-decoration: none !important;

    box-shadow: 0 6px 18px rgba(0,0,0,.17);
}

.cms-layout-cta .cms-cta-actions a:hover,
.cms-layout-cta .cms-cta-actions a:focus,
.cms-layout-cta .cms-cta-actions .btn:hover,
.cms-layout-cta .cms-cta-actions .btn:focus,
.cms-layout-cta .cms-cta-actions .button:hover,
.cms-layout-cta .cms-cta-actions .button:focus {
    color: #203c18 !important;
    background: #f2f6ef;
    border-color: #f2f6ef;
    text-decoration: none !important;
}

@media (max-width: 767px) {
    .cms-layout-cta {
        margin: 34px 0 42px;
        padding: 0 14px;
    }

    .cms-layout-cta .cms-cta-inner {
        padding: 30px 24px;
        border-radius: 13px;
    }

    .cms-layout-cta .cms-cta-row {
        flex-direction: column;
        margin: 0;
    }

    .cms-layout-cta .cms-cta-row > [class*="col-"] {
        width: 100%;
        max-width: 100%;
        flex-basis: 100%;

        padding: 0;
    }

    .cms-layout-cta .cms-cta-image-left .cms-cta-media,
    .cms-layout-cta .cms-cta-image-right .cms-cta-media {
        order: 1;
        margin-bottom: 22px;
    }

    .cms-layout-cta .cms-cta-content {
        order: 2;
    }

    .cms-layout-cta .cms-cta-actions a,
    .cms-layout-cta .cms-cta-actions .btn,
    .cms-layout-cta .cms-cta-actions .button {
        width: 100%;
    }
}


/* Timeline artikel */
.cms-article-timeline .cms-timeline-section {
    padding: 30px 20px 70px;
}

.cms-article-timeline .cms-timeline-section > .container {
    max-width: 1200px;
    margin: 0 auto;
}

.cms-article-timeline .cms-timeline {
    --timeline-year-width: 160px;
    --timeline-line-x: 180px;
    --timeline-marker-size: 18px;
    --timeline-green: #426b2b;
    --timeline-green-dark: #365924;
    --timeline-green-soft: #d9f5ca;
    --timeline-green-line: #7fa66a;

    position: relative;
}

/* Verticale lijn */

.cms-article-timeline .cms-timeline::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: var(--timeline-line-x);

    width: 4px;

    background: var(--timeline-green-line);

    content: "";
}

/* Intro bovenaan */

.cms-article-timeline .cms-timeline-intro {
    display: grid;
    grid-template-columns:
        var(--timeline-line-x)
        minmax(0, 1fr);

    margin-bottom: 58px;
}

.cms-article-timeline .cms-timeline-intro-content {
    padding-left: 26px;
    border-left-color: var(--timeline-green-line);
}

.cms-article-timeline .cms-timeline-intro-content h2 {
    margin: 0 0 4px;

    color: #151f2b;

    font-size: 28px;
    font-weight: 500;
    line-height: 1.2;
    text-transform: none;
}

.cms-article-timeline .cms-timeline-intro-text {
    max-width: 920px;

    color: #66717e;

    font-size: 18px;
    line-height: 1.25;
}

.cms-article-timeline .cms-timeline-intro-text > :last-child {
    margin-bottom: 0;
}

/* Item */

.cms-article-timeline .cms-timeline-item {
    position: relative;

    display: grid;
    grid-template-columns:
        var(--timeline-year-width)
        minmax(0, 1fr);

    column-gap: 47px;

    margin: 0;
    padding: 0 0 52px;
}

.cms-article-timeline .cms-timeline-year {
    padding-top: 3px;
    text-align: left;
}

.cms-article-timeline .cms-timeline-year span {
    display: inline-block;
    padding: 3px 11px;

    color: var(--timeline-green-dark);
    background: var(--timeline-green-soft);

    border-radius: 999px;

    font-size: 22px;
    font-weight: 700;
    line-height: 1.15;
}

.cms-article-timeline .cms-timeline-marker {
    position: absolute;
    z-index: 2;
    top: 6px;
    left: calc(
            var(--timeline-line-x)
            - var(--timeline-marker-size) / 2
            + 2px
    );

    width: var(--timeline-marker-size);
    height: var(--timeline-marker-size);

    background: var(--timeline-green);
    box-shadow: 0 0 0 1px var(--timeline-green);
    border: 3px solid #ffffff;
    border-radius: 50%;


}

.cms-article-timeline .cms-timeline-main {
    min-width: 0;
}

.cms-article-timeline .cms-timeline-title {
    margin: 0 0 28px;

    color: #222f3f;

    font-size: 23px;
    font-weight: 400;
    line-height: 1.25;
    text-transform: none;
}

/* Content en afbeelding */

.cms-article-timeline .cms-timeline-content-grid {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;

    margin-right: -16px;
    margin-left: -16px;
}

.cms-article-timeline
.cms-timeline-content-grid > [class*="col-"] {
    min-width: 0;
    padding-right: 16px;
    padding-left: 16px;
}

.cms-article-timeline .cms-timeline-copy {
    color: #626d79;

    font-size: 17px;
    line-height: 1.5;
}

.cms-article-timeline .cms-timeline-copy > :first-child {
    margin-top: 0;
}

.cms-article-timeline .cms-timeline-copy > :last-child {
    margin-bottom: 0;
}

.cms-article-timeline .cms-timeline-media figure {
    margin: 0;
}

.cms-article-timeline .cms-timeline-media img {
    display: block;

    width: 100%;
    max-width: 100%;
    height: auto;

    border: 0;
    border-radius: 0;
}

.cms-article-timeline .cms-timeline-media figcaption {
    margin-top: 7px;

    color: #7b858f;

    font-size: 13px;
    line-height: 1.4;
}

/* Afbeelding rechts */

.cms-article-timeline .cms-timeline-image-right .cms-timeline-copy {
    order: 1;
}

.cms-article-timeline .cms-timeline-image-right .cms-timeline-media {
    order: 2;
}

/* Afbeelding links */

.cms-article-timeline .cms-timeline-image-left .cms-timeline-media {
    order: 1;
}

.cms-article-timeline .cms-timeline-image-left .cms-timeline-copy {
    order: 2;
}

/* Full/center */

.cms-article-timeline .cms-timeline-image-center {
    display: block;
    margin: 0;
}

.cms-article-timeline .cms-timeline-image-center > [class*="col-"] {
    width: 100%;
    max-width: 100%;
    padding: 0;
}

.cms-article-timeline .cms-timeline-image-center .cms-timeline-media {
    margin-bottom: 22px;
}

/* Tablet */

@media (max-width: 991px) {
    .cms-article-timeline .cms-timeline {
        --timeline-year-width: 110px;
        --timeline-line-x: 130px;
    }

    .cms-article-timeline .cms-timeline-item {
        column-gap: 40px;
    }
}

/* Mobiel */

@media (max-width: 767px) {
    .cms-article-timeline .cms-timeline-section {
        padding: 22px 14px 48px;
    }

    .cms-article-timeline .cms-timeline {
        --timeline-year-width: 0px;
        --timeline-line-x: 12px;
        --timeline-marker-size: 14px;
    }

    .cms-article-timeline .cms-timeline-intro {
        display: block;
        margin-left: 30px;
        margin-bottom: 42px;
    }

    .cms-article-timeline .cms-timeline-intro-content {
        padding-left: 18px;
    }

    .cms-article-timeline .cms-timeline-item {
        display: block;

        margin-left: 30px;
        padding-bottom: 42px;
    }

    .cms-article-timeline .cms-timeline-year {
        margin-bottom: 11px;
    }

    .cms-article-timeline .cms-timeline-year span {
        font-size: 14px;
    }

    .cms-article-timeline .cms-timeline-marker {
        left: calc(
                var(--timeline-line-x)
                - var(--timeline-marker-size) / 2
                + 2px
        );
    }

    .cms-article-timeline .cms-timeline-title {
        margin-bottom: 18px;
        font-size: 21px;
    }

    .cms-article-timeline .cms-timeline-content-grid {
        flex-direction: column;
        margin: 0;
    }

    .cms-article-timeline
    .cms-timeline-content-grid > [class*="col-"] {
        width: 100%;
        max-width: 100%;
        flex-basis: 100%;

        padding: 0;
    }

    .cms-article-timeline .cms-timeline-media {
        order: 1 !important;
        margin-bottom: 18px;
    }

    .cms-article-timeline .cms-timeline-copy {
        order: 2 !important;
    }
}

.cms-layout-cta .cms-cta-text a {
    color: #ffffff;
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: rgba(255,255,255,.55);
    text-underline-offset: 3px;
}

.cms-layout-cta .cms-cta-text a:hover,
.cms-layout-cta .cms-cta-text a:focus {
    color: #f1f7ed;
    text-decoration-color: #ffffff;
}

blockquote.cms-layout-quote {
    position: relative;

    max-width: 900px;
    margin: 34px auto;
    padding: 26px 72px 26px 78px;

    color: #2f382f;
    background: #f7f9f5;

    border-left: 5px solid #7fa66a;
    border-radius: 10px;

    box-shadow: 0 8px 24px rgba(35, 52, 30, 0.06);
}

blockquote.cms-layout-quote::before {
    position: absolute;
    top: 10px;
    left: 20px;

    color: #bccdaf;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 54px;
    font-weight: 700;
    line-height: 1;

    content: "\201C";
}
blockquote.cms-layout-quote::after {
    right: 18px;
    bottom: 14px;

    color: #c7d6bd;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 46px;
    font-weight: 700;
    line-height: 1;

    content: "\201D";
}

blockquote.cms-layout-quote {
    padding: 26px 68px 32px 78px;
}