.ds-footer { 
    padding: 3rem 0 1.5rem; 
    font-family: 'Lato', sans-serif; 
}

.ds-footer-box { 
    background: #F9F9F7; 
    border-top: 3px solid #20381d;   /* aangepast naar jouw donkergroen */
    border-radius: 8px; 
    padding: 2.5rem 2rem 1.8rem; 
}

.ds-footer-top { 
    display: grid; 
    grid-template-columns: 1.4fr 1fr 1fr 1.4fr; 
    gap: 2.8rem; 
    margin-bottom: 2.8rem; 
}

/* Brand naam - groter en vetter */
.ds-brand-name { 
    font-family: 'Playfair Display', serif; 
    font-size: 1.55rem; 
    font-weight: 700; 
    color: #20381d; 
    letter-spacing: 0.05em; 
    margin: 0 0 0.5rem; 
}

/* Tagline */
.ds-brand-tagline { 
    font-size: 0.82rem; 
    font-weight: 600; 
    color: #355c2f; 
    letter-spacing: 0.15em; 
    text-transform: uppercase; 
    margin: 0 0 1.1rem; 
}

/* Beschrijving - beter leesbaar */
.ds-brand-desc { 
    font-size: 0.88rem; 
    line-height: 1.75; 
    color: #20381d; 
    font-weight: 400; 
    margin: 0; 
}

/* Kolom titels - dikker en groter */
.ds-col-title { 
    font-family: 'Playfair Display', serif; 
    font-size: 0.95rem; 
    font-weight: 700;      /* was 500 → nu bold */
    color: #20381d; 
    letter-spacing: 0.08em; 
    text-transform: uppercase; 
    margin: 0 0 1.1rem; 
}

/* Links - dikker en beter contrast */
.ds-col-links { 
    list-style: none; 
    margin: 0; 
    padding: 0; 
}

.ds-col-links li { 
    margin-bottom: 0.6rem; 
}

.ds-col-links a { 
    font-size: 0.87rem; 
    font-weight: 500;        /* iets vetter */
    color: #20381d; 
    text-decoration: none; 
}

.ds-col-links a:hover { 
    color: #355c2f; 
    text-decoration: underline; 
}

/* Contact info */
.ds-contact-item { 
    font-size: 0.87rem; 
    font-weight: 500; 
    color: #20381d; 
    margin-bottom: 0.5rem; 
    line-height: 1.6; 
}

/* Divider */
.ds-divider { 
    border: none; 
    border-top: 1px solid #a0b070; 
    margin: 0 0 1.4rem; 
}

/* Bottom gedeelte */
.ds-footer-bottom { 
    display: flex; 
    align-items: center; 
    justify-content: space-between; 
    flex-wrap: wrap; 
    gap: 1rem; 
}

.ds-copyright { 
    font-size: 0.78rem; 
    color: #355c2f; 
    font-weight: 500; 
}

/* Betalingsbadges */
.ds-payments { 
    display: flex; 
    gap: 8px; 
    flex-wrap: wrap; 
}

.ds-pay-badge { 
    background: #fff; 
    border: 1px solid #20381d; 
    border-radius: 5px; 
    padding: 4px 10px; 
    font-size: 0.72rem; 
    font-weight: 600; 
    color: #20381d; 
}

/* Responsive */
@media (max-width: 700px) { 
    .ds-footer-top { 
        grid-template-columns: 1fr 1fr; 
        gap: 2.5rem; 
    } 
}

@media (max-width: 480px) { 
    .ds-footer-top { 
        grid-template-columns: 1fr; 
        gap: 2rem; 
    } 
}