body{
    background-color:black;
    font-family:Verdana, Geneva, Tahoma, sans-serif;
}
.nav{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  z-index:9999;
}

/* checkbox hidden */
#menu-toggle{
  display:none;
}

/* ================= HAMBURGER ================= */
.hamburger{
  position:absolute;
  top:12px;
  left:15px;
  width:35px;
  cursor:pointer;
  z-index:10001;
}

.hamburger span{
  display:block;
  height:3px;
  width:25px;
  margin:5px 0;
  background:#d4af37;
  transition:0.3s ease;
}

/* ================= OVERLAY ================= */
.overlay{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100vh;
  background:rgba(0,0,0,0.35); /* doorzichtig zwart */
  opacity:0;
  visibility:hidden;
  transition:0.3s ease;
  backdrop-filter: blur(3px);
  z-index:9997;

}

/* ================= MENU ================= */
.menu{
  position:fixed;
  top:0;
  left:-100%;
  width:240px;
  height:100vh;
  background:rgba(0,0,0,0.75); /* 👈 hier zit de transparantie */ 
  display:flex;
  flex-direction:column;
  padding-top:80px;
  transition:0.4s ease;
  z-index:9998;
  box-shadow:2px 0 10px rgba(0,0,0,0.5);
  backdrop-filter: blur(6px); /* 👈 modern glass effect */
}

.menu a{
  color:#d4af37;
  text-decoration:none;
  padding:15px 20px;
  border-bottom:1px solid #222;
  font-size:18px;
}

/* CALL BUTTON */
.menu .call{
  background:#d4af37;
  color:black !important;
  font-weight:bold;
  margin:20px;
  text-align:center;
  border-radius:5px;
}

/* ================= OPEN STATE ================= */
#menu-toggle:checked ~ .menu{
  left:0;
}

#menu-toggle:checked ~ .overlay{
  opacity:0.5;
  visibility:visible;
}

/* ================= HAMBURGER → X ================= */
#menu-toggle:checked + label span:nth-child(1){
  transform:rotate(45deg) translate(5px,5px);
}

#menu-toggle:checked + label span:nth-child(2){
  opacity:0;
}

#menu-toggle:checked + label span:nth-child(3){
  transform:rotate(-45deg) translate(6px,-6px);
}

/* smooth animatie */
.hamburger span{
  transition:0.3s ease;
}

.menu-link {
  transition: all 0.3s ease;
}

.menu-link:hover{
  background-color: #5b4c26;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0,0,0,0.3);
}
/* Tekstblokken gecentreerd op de pagina, maar de tekst zelf strak naar links */

p, h3{
    color: white;
    font-size: calc(10px + 0.50vw);
    text-align: left;        /* Zorgt dat elke zin strak links begint */
    margin: 0 auto 1.5em auto; /* Houdt het totale tekstblok netjes in het midden */
    width: 75%;              /* Bepaalt hoe breed het tekstblok is */
}

h3 {
    color:goldenrod;
    text-align: left;        /* Zorgt dat ook de titels strak links beginnen */
}
h1{
    color: white;
    text-align: center;      /* Zorgt dat de hoofdtitel gecentreerd is */
}
/* Zorgt dat de opbouw van boven naar beneden loopt en gecentreerd is */
.hoofd-container {
  display: flex;
  flex-direction: column;
  align-items: center; /* Centreert alle blokken horizontaal */
  min-height: 100vh;   /* Zorgt dat de pagina minimaal schermvullend is */
  width: 100%;
  margin: 0 auto;
}
.wesp{
  margin-top: 5em;
}
/* Zet de maximale breedte van je tekstblokken zodat het leesbaar blijft */
.wesp, .start, .parent, .startinfo {
  color:white;
  width: 100%;
  max-width: 90%;    /* Voorkomt dat tekst over de hele breedte van een groot scherm rekt */
  text-align: center;  /* Centreert alle teksten en koppen */
  margin-bottom: 30px; /* Geeft wat ruimte tussen de verschillende blokken */
  padding: 0 20px;     /* Zorgt voor ademruimte op mobiele schermen */
}


/* Styling voor de foto-groep */
.image {
  display: flex;
  flex-direction: column; /* Foto's onder elkaar. Verander naar 'row' voor naast elkaar */
  align-items: center;
  gap: 20px;              /* Ruimte tussen de foto's */
}

.image img, .center-img {
  max-width: 70%;
  height: auto;
  display: block;
  margin: 0 auto;         /* Centreert de afbeeldingen */
}
.start .gemeente-knop {
    display: inline-block;
    background-color:goldenrod;
    color: black;
    width: 200px;
    text-align: center;
    border-radius: 5px;
    padding: 14px 28px;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    font-family: Arial, sans-serif;
    transition: all 0.3s ease;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}
.start .btn  {
    display: inline-block;
    background-color:rgb(175, 239, 111);
    color: black;
    text-align: center;
    width: 75px;
    border-radius: 5px 0px;
    padding: 2px 0px;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
    font-family: Arial, sans-serif;
    transition: all 0.3s ease;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}
.btn:hover, .gemeente-knop:hover {
    background-color: #b8860b;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0,0,0,0.3);
}
.gebied:hover {
    color: #b8860b;
    text-decoration: underline;
    transform: translateY(-2px);
}
.werkgebied a{
  color: #d98c00;
  text-decoration: none;
  font-weight: 400;
  transition: all 0.3s ease;
}
.werkgebied a:hover {
  color: rgb(175, 239, 111);;
  text-decoration: underline;
  transform: translateY(-2px);
}
section.werkgebied a::after {
  content: ", ";
  color: goldenrod;
}
section.werkgebied a:last-child::after {
  content: "";
}
/* --- FOOTER ONDERAAN --- */
footer {
    background-color: black;
    text-align: center;
    width: 100%;
    padding: 20px 0;
    margin-top: auto; /* Duwt de footer naar de absolute bodem */
    border-top: 1px solid #222; 
}
/* Door 'footer p' heel specifiek te maken, dwingen we de gouden kleur af */
footer p {
  color: goldenrod !important; /* !important zorgt ervoor dat 'white' van de gewone p-tag genegeerd wordt */
  font-size: 12px;
  width: 100vw;
  margin: 0 auto 5px auto; /* Centreert de tekstlijnen in de footer */
  text-align: center;      /* Zorgt dat de footertekst wél gecentreerd blijft */
}

/* Styling voor de JC letters */
.JC {
  color: #ffcc00; /* Wespen-geel als voorbeeld */
  font-weight: bold;
}
@media (max-width: 500px) {
 .wesp, .start, .parent, .startinfo  {
   max-width: 95%;
   padding: 0 20px; 
 }
 .image img, .center-img {
  max-width: 75%;
  height: auto;
  margin-right: 3.5em;         /* Centreert de afbeeldingen */
}

}