:root {
    --edam-gold: #e3b709;
    --edam-gold-hover: #c9a208;
    --edam-dark: #111111;
    --edam-gray: #495057;
    --edam-light-bg: #fafafa;
    --edam-card-bg: #ffffff;
    --edam-muted: #6c757d;
}

body {
    background-color: var(--edam-light-bg);
    color: var(--edam-dark);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    line-height: 1.6;
    overflow-x: hidden;
}

h1, h2, h3, h4, h5, .fw-bold { color: var(--edam-dark); }
.text-muted-custom { color: var(--edam-muted) !important; }
a { color: var(--edam-dark); text-decoration: none; transition: color 0.2s; }
a:hover { color: var(--edam-gold); }

/* Navbar */
.navbar { background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(8px); border-bottom: 1px solid #eee; }
.navbar-brand { font-weight: 800; color: var(--edam-dark) !important; letter-spacing: 0.05em; }
.nav-link { color: var(--edam-dark) !important; font-weight: 500; }
.nav-link:hover { color: var(--edam-gold-hover) !important; }
.btn-edam-nav { background: var(--edam-gold); color: var(--edam-dark) !important; font-weight: 600; border-radius: 0.5rem; padding: 0.4rem 1rem; }
.btn-edam-nav:hover { background: var(--edam-gold-hover); }

/* Buttons */
.btn-edam {
    background: var(--edam-gold);
    color: var(--edam-dark);
    border: none;
    font-weight: 700;
    border-radius: 0.5rem;
    transition: all 0.2s ease;
    box-shadow: 0 2px 8px rgba(227, 183, 9, 0.25);
}
.btn-edam:hover { background: var(--edam-gold-hover); transform: translateY(-2px); color: var(--edam-dark); }
.btn-edam-outline { border: 2px solid var(--edam-gold); color: var(--edam-dark); background: transparent; }
.btn-edam-outline:hover { background: var(--edam-gold); color: var(--edam-dark); }

/* Cards & Sections */
.edam-card {
    background: var(--edam-card-bg);
    border: 1px solid #e9ecef;
    border-radius: 1rem;
    padding: 1.5rem;
    box-shadow: 0 4px 12px rgba(0,0,0,0.04);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.edam-card:hover { transform: translateY(-4px); box-shadow: 0 8px 20px rgba(0,0,0,0.08); }
section { padding: 4rem 0; }
.bg-subtle { background-color: #f1f3f5; }
.section-title { position: relative; margin-bottom: 1.5rem; display: inline-block; font-weight: 800; }
.section-title::after { content: ""; position: absolute; bottom: -6px; left: 0; width: 50px; height: 4px; background: var(--edam-gold); border-radius: 2px; }

/* Scroll Reveal */
.reveal { opacity: 0; transform: translateY(20px); transition: opacity 0.6s ease, transform 0.6s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }

/* Utilities */
.icon-box {
    width: 44px; height: 44px;
    background: rgba(227, 183, 9, 0.15);
    border-radius: 0.75rem;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 1.25rem; color: var(--edam-gold-hover);
}
.gold-divider { height: 2px; background: var(--edam-gold); width: 60px; margin: 1rem auto; border-radius: 2px; }

/* Responsive tweaks */
@media (max-width: 768px) {
    section { padding: 3rem 0; }
    h1 { font-size: 2rem; }
    h2 { font-size: 1.75rem; }
}