/* Body styling met volledige achtergrond */
body {
margin: 0;
font-family: Arial, sans-serif;
line-height: 1.6;
color: #333;
background-image: url('images/background.jpg');
background-size: cover;
background-repeat: no-repeat;
background-attachment: fixed;
background-position: center;
}

a {
text-decoration: none;
color: inherit;
}

/* Header en logo */
header {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 4rem 2rem;
background-image: url('images/achtergrond.jpg');
background-size: cover;
background-position: center;
color: white;
text-align: center;
}

header img.logo {
width: 25vw;
max-width: none;
height: auto;
margin-bottom: 1rem;
}

@media (max-width: 1024px) {
header img.logo { width: 40vw; }
}

@media (max-width: 768px) {
header img.logo { width: 60vw; }

header h1 {
font-size: 1.8rem;
}
}

/* Navigatie menu */
header nav {
display: flex;
justify-content: center;
align-items: center;
gap: 2rem;
flex-wrap: wrap;
margin-top: 1rem;
}

header nav a {
font-weight: bold;
color: white;
font-size: clamp(1.6rem, 2.5vw, 1.8rem);
text-decoration: none;
transition: color 0.2s, transform 0.2s;
}

header nav a:hover {
color: #f0c040;
transform: scale(1.1);
}

@media (max-width: 768px) {
header nav { gap: 1.5rem; }
}

/* Sections */
section {
padding: 4rem 2rem;
max-width: 1200px;
margin: auto;
}

h2 {
text-align: center;
margin-bottom: 2rem;
color: #2c3e50;
}

/* Diensten container */
.diensten-container {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 2rem;
}

.dienst {
background-color: white;
flex: 1 1 250px;
padding: 2rem;
border-radius: 8px;
box-shadow: 0 2px 6px rgba(0,0,0,0.1);
transition: transform 0.2s;
}

.dienst:hover { transform: translateY(-5px); }

/* Over ons container */
.over-container {
display: flex;
flex-wrap: wrap;
gap: 2rem;
align-items: center;
}

.over-text { flex: 1 1 300px; }

/* Formulieren */
form {
display: flex;
flex-direction: column;
max-width: 500px;
margin: 2rem auto;
gap: 1rem;
padding: 1rem;
box-sizing: border-box;
}

input, textarea {
padding: 0.75rem;
border: 1px solid #ccc;
border-radius: 5px;
font-size: 1rem;
width: 100%;
box-sizing: border-box;
}

button {
padding: 0.75rem;
background-color: #2c3e50;
color: white;
border: none;
border-radius: 5px;
font-size: 1rem;
cursor: pointer;
transition: background-color 0.2s;
width: 100%;
}

button:hover { background-color: #1a252f; }

@media (max-width: 768px) {
form { width: 90%; margin: 2rem auto; }
}

#contact {
    display: flex;
    flex-direction: column;
    align-items: center;
}
