/* Header kompakter */
.container-header {
    background: #fff;
    padding: 10px 0;
    border-bottom: 1px solid #ddd;
}

/* Logo und Menü nebeneinander */
.container-header .grid-child {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Logo */
.navbar-brand img {
    max-height: 70px;
    width: auto;
}

/* Menü */
.mod-menu {
    margin: 0;
}

.mod-menu > li {
    margin-left: 25px;
}

.mod-menu a {
    color: #2d2d2d !important;
    font-weight: 600;
}

.mod-menu a:hover,
.mod-menu .active > a {
    color: #2f6b3f !important;
}

footer.container-footer.footer.full-width {
    background: #2f6b3f !important;
    background-color: #2f6b3f !important;
    background-image: none !important;
}

footer.container-footer.footer.full-width .grid-child {
    background: transparent !important;
}

footer.container-footer.footer.full-width,
footer.container-footer.footer.full-width p,
footer.container-footer.footer.full-width strong,
footer.container-footer.footer.full-width a {
    color: #ffffff !important;
}

footer.container-footer.footer.full-width a:hover {
    color: #dfeecf !important;
}
.hero-banner {
    position: relative;
    width: 100%;
    height: 480px;
    overflow: hidden;
    margin-bottom: 60px;
}

.hero-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.hero-overlay {
    position: absolute;
    left: 8%;
    bottom: 12%;
    color: #ffffff;
    background: rgba(0,0,0,0.35);
    padding: 28px 34px;
    max-width: 620px;
}

.hero-overlay h1 {
    margin: 0 0 10px;
    font-size: 42px;
}

.hero-overlay p {
    margin: 0;
    font-size: 20px;
}