* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: Arial, sans-serif;
    background-image: url('../images/huisstijlpatroon.png');
    background-size: cover;
    background-position: center;
}

/* Je originele sticky header CSS */
header {
    position: sticky;
    top: 0;
    background-color: rgba(255, 255, 255, 0.9); /* Transparante achtergrond */
    padding-top: 20px;
    display: flex;
    flex-direction: column; /* Zet de header in een kolom */
    justify-content: center; /* Centraal uitlijnen van de inhoud */
    align-items: center;     /* Centraal uitlijnen van de inhoud */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    z-index: 999; /* Zorg ervoor dat de header altijd boven andere elementen komt */
}

/* Logo en H1 naast elkaar */
.logo-container {
    display: flex;
    align-items: center;      /* Verticaal uitlijnen van logo en titel */
    justify-content: center;  /* Horizontaal centreren */
}

.logo {
    max-width: 80px;
    margin-right: 10px; /* Ruimte tussen het logo en de titel */
}

h1 {
    font-size: 1.8rem;
    color: #333;
}

/* Menu container */
.main-menu{
    width: 100%;
    background-color: #37B34A;
}

.main-menu ul {
    display: flex;               /* Zet de lijst-items naast elkaar */
    justify-content: center;     /* Centreer de lijst-items horizontaal */
    padding: 0;
    margin: 0;
}

/* Menu lijst-items */
.main-menu li {
    list-style-type: none;       /* Verwijder standaard lijst-stijl */
    margin: 0 15px;              /* Zorg voor ruimte tussen de menu-opties */
}

/* Menu links */
.main-menu a {
    text-decoration: none;       /* Verwijder onderstreping */
    color: #fff;                 /* Zet de tekstkleur in wit */
    font-size: 1.1rem;           /* Maak de tekst iets groter */
    padding: 10px 15px;          /* Voeg wat padding toe aan de link */
    display: block;              /* Maak de link een blok-element om de padding toe te passen */
    transition: background-color 0.3s ease;  /* Smooth transition voor de hover */
}

/* Actieve link markeren */
.main-menu a.active {
    background-color: #009345;             /* Groene kleur voor actieve link */
    font-weight: bold;          /* Maak de tekst vet */
}

/* Hover effect voor links */
.main-menu a:hover {
    background-color: #009345;  /* Achtergrondkleur bij hover */
}

/* Algemene stijl voor het centreren van de tekst */
.main-content {                
    justify-content: center;      /* Horizontaal centreren */
    align-items: center;          /* Verticaal centreren */
    text-align: center;           /* Horizontaal centreren van de tekst */
    padding: 20px;                /* Wat ruimte aan de zijkanten */
    margin-top: 80px;             /* Ruimte voor de sticky header */
    margin-bottom: 80px;          /* Ruimte voor de footer */
}

.main-content p {
    font-size: 1.2rem;            /* Pas de tekstgrootte aan indien nodig */
    color: #333;                  /* Tekstkleur */
}

/* Sticky header (als je dit nog niet had) */
.main-menu {
  position: sticky;
  top: 0;
  z-index: 1000;
}

/* Checkbox verbergen */
.menu-toggle {
  display: none;
}

/* Hamburger (standaard verborgen op desktop) */
.hamburger {
  display: none;
  cursor: pointer;
  padding: 14px 16px;
  user-select: none;
}

.hamburger span {
  display: block;
  width: 26px;
  height: 3px;
  background: #fff;
  margin: 5px 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

/* --- Mobiel --- */
@media (max-width: 768px) {
  /* Maak van de nav een soort headerbar met hamburger rechts */
  .main-menu {
    display: flex;
    align-items: center;
    justify-content: flex-end; /* hamburger naar rechts */
    min-height: 52px;
  }

  .hamburger {
    display: inline-block;
  }

  /* Verberg menu dichtgeklapt */
  .main-menu ul {
    display: none;

    /* dropdown onder sticky header */
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;

    flex-direction: column;
    align-items: stretch;

    background-color: #37B34A; /* zelfde groen */
    margin: 0;
    padding: 0;

    /* optioneel: schaduw zodat je duidelijk dropdown ziet */
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
  }

  .main-menu li {
    margin: 0;
    list-style: none;
  }

  .main-menu a {
    padding: 14px 16px;
    border-top: 1px solid rgba(255,255,255,0.2);
  }

  /* Openklappen */
  .menu-toggle:checked ~ ul {
    display: flex;
  }

  /* Hamburger naar X animatie */
  .menu-toggle:checked + .hamburger span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  .menu-toggle:checked + .hamburger span:nth-child(2) {
    opacity: 0;
  }
  .menu-toggle:checked + .hamburger span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }
}

.content {
    padding: 40px 20px;
    max-width: 1200px;
    margin: 0 auto;
    background-color: rgba(255, 255, 255, 0.8);
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.intro-praktisch {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: left;
}

.intro {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.intro-img {
    max-width: 300px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.intro-text {
    max-width: 600px;
    font-size: 1.2rem;
    color: #555;
}

.contact-info {
    list-style: none;
    margin-top: 20px;
}

.contact-info li {
    margin-bottom: 10px;
}

.contact-info a {
    color: #333;
    text-decoration: none;
}

.contact-info a:hover {
    text-decoration: underline;
}

.social-icon {
    width: 24px;
    height: 24px;
}

.team {
    margin-top: 40px;
    margin-bottom: 80px;
    text-align: center;
}

.team-img {
    max-width: 300px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.team-text {
    font-size: 1.2rem;
    color: #555;
    max-width: 600px;
    margin: 0 auto;
}

.contact {
    margin-top: 40px;
    margin-bottom: 80px;
    text-align: center;
}

.contact-text {
    font-size: 1.2rem;
    color: #555;
    max-width: 600px;
    margin: 0 auto;
}

/* Algemene footer styling */
footer {
    display: flex;
    justify-content: center;  /* Centraal uitlijnen van de inhoud horizontaal */
    align-items: center;  /* Verticaal centreren van de inhoud */
    flex-wrap: wrap;  /* Zorgt ervoor dat de inhoud niet buiten het scherm valt op kleinere schermen */
    background-color: #333;  /* Achtergrondkleur veranderd naar #333 */
    color: white;  /* Zorgt ervoor dat de tekst wit is tegen de donkere achtergrond */
    padding: 20px;
    width: 100%;
    height: auto;
    text-align: center;  /* Tekst centreren */
}

/* VAK Logo styling */
.vak-logo-link {
    margin-right: 30px; /* Ruimte tussen logo en adres */
}

.vak-logo {
    height: 60px;  /* Pas de hoogte van het logo aan zoals gewenst */
    width: auto;   /* Zorgt ervoor dat de breedte in verhouding blijft */
}

/* Adres sectie */
.footer-address {
    margin-right: 30px;  /* Ruimte tussen adres en de links */
}

.footer-address p {
    margin: 5px 0; /* Ruimte tussen de regels in het adres */
}

.footer-address a {
    color: #fff;  /* Zorgt ervoor dat de links wit zijn */
    text-decoration: none;
}

.footer-address a:hover {
    text-decoration: underline; /* Voeg een underline toe bij hover */
}

/* Link sectie (Privacy en Algemene Voorwaarden) */
.footer-links {
    display: flex;
    flex-direction: column;  /* Zet de links onder elkaar */
    align-items: center;  /* Zorgt ervoor dat de links gecentreerd zijn */
}

.footer-links p {
    margin: 5px 0; /* Ruimte tussen de links */
}

.footer-links a {
    color: #fff;  /* Zorgt ervoor dat de links wit zijn */
    text-decoration: none;
}

.footer-links a:hover {
    text-decoration: underline; /* Voeg een underline toe bij hover */
}



@media (max-width: 768px) {
    h1 {
        font-size: 1.4rem;
    }

    .logo {
        max-width: 60px;
    }

    .content {
        padding: 20px;
    }

    .intro-text,
    .team-text,
    .contact-text {
        font-size: 1rem;
    }

    .intro-img,
    .team-img {
        max-width: 200px;
    }

    .social-icon {
        width: 20px;
        height: 20px;
    }
}

/* Media query voor kleinere schermen (mobiel, tablet) */
@media (max-width: 500px) {
    /* Algemene stijlen voor de floating button */
    .floating-button {
        position: fixed;          /* Zorgt ervoor dat de knop altijd zichtbaar is */
        bottom: 0px;             /* Afstand van de onderkant van het scherm */
        right: 0px;              /* Afstand van de rechterkant van het scherm */
        z-index: 999;             /* Zorgt ervoor dat de knop boven andere elementen komt */
        display: flex;            /* Flexbox om de tekst te centreren */
        justify-content: center;  /* Horizontaal centreren van de tekst */
        align-items: center;      /* Verticaal centreren van de tekst */
        width: 150px;             /* Breedte van de knop */
        height: 150px;            /* Hoogte van de knop (gelijk aan breedte voor een cirkel) */
        transition: all 0.3s ease-in-out;  /* Voor een animatie bij hover */
        text-decoration: none;     /* Verwijder de standaard linkstijl */
    }

    .floating-button img {
        width: 150px;
    }

    /* Tekst binnen de knop */
    .floating-button span {
        position: absolute;       /* Zorgt ervoor dat de tekst binnen de knop blijft */
        font-size: 14px;           /* Pas de tekstgrootte aan */
        color: #333333;              /* Maak de tekst wit */
        font-weight: bold;         /* Maak de tekst vet */
        text-align: center;        /* Zorgt ervoor dat de tekst gecentreerd wordt */
        width: 100%;               /* Zorgt ervoor dat de tekst niet buiten de knop valt */
        text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);  /* Schaduw voor de tekst */
    }
}

/* Media query voor kleinere schermen (mobiel, tablet) */
@media (min-width: 500px) {
    /* Algemene stijlen voor de floating button */
    .floating-button {
        position: fixed;          /* Zorgt ervoor dat de knop altijd zichtbaar is */
        bottom: 30px;             /* Afstand van de onderkant van het scherm */
        right: 30px;              /* Afstand van de rechterkant van het scherm */
        z-index: 999;             /* Zorgt ervoor dat de knop boven andere elementen komt */
        display: flex;            /* Flexbox om de tekst te centreren */
        justify-content: center;  /* Horizontaal centreren van de tekst */
        align-items: center;      /* Verticaal centreren van de tekst */
        width: 150px;             /* Breedte van de knop */
        height: 150px;            /* Hoogte van de knop (gelijk aan breedte voor een cirkel) */
        transition: all 0.3s ease-in-out;  /* Voor een animatie bij hover */
        text-decoration: none;     /* Verwijder de standaard linkstijl */
    }

    .floating-button img {
        width: 200px;
    }

    /* Tekst binnen de knop */
    .floating-button span {
        position: absolute;       /* Zorgt ervoor dat de tekst binnen de knop blijft */
        font-size: 18px;           /* Pas de tekstgrootte aan */
        color: #333333;              /* Maak de tekst wit */
        font-weight: bold;         /* Maak de tekst vet */
        text-align: center;        /* Zorgt ervoor dat de tekst gecentreerd wordt */
        width: 100%;               /* Zorgt ervoor dat de tekst niet buiten de knop valt */
        text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);  /* Schaduw voor de tekst */
    }
}

@media (min-width: 1250px) {
    /* Algemene stijlen voor de floating button */
    .floating-button {
        position: fixed;          /* Zorgt ervoor dat de knop altijd zichtbaar is */
        bottom: 80px;             /* Afstand van de onderkant van het scherm */
        right: 80px;              /* Afstand van de rechterkant van het scherm */
        z-index: 999;             /* Zorgt ervoor dat de knop boven andere elementen komt */
        display: flex;            /* Flexbox om de tekst te centreren */
        justify-content: center;  /* Horizontaal centreren van de tekst */
        align-items: center;      /* Verticaal centreren van de tekst */
        width: 150px;             /* Breedte van de knop */
        height: 150px;            /* Hoogte van de knop (gelijk aan breedte voor een cirkel) */
        transition: all 0.3s ease-in-out;  /* Voor een animatie bij hover */
        text-decoration: none;     /* Verwijder de standaard linkstijl */
    }

    .floating-button img {
        width: 250px;
    }

    /* Tekst binnen de knop */
    .floating-button span {
        position: absolute;       /* Zorgt ervoor dat de tekst binnen de knop blijft */
        font-size: 19px;           /* Pas de tekstgrootte aan */
        color: #333333;              /* Maak de tekst wit */
        font-weight: bold;         /* Maak de tekst vet */
        text-align: center;        /* Zorgt ervoor dat de tekst gecentreerd wordt */
        width: 100%;               /* Zorgt ervoor dat de tekst niet buiten de knop valt */
        text-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);  /* Schaduw voor de tekst */
    }
}

/* Hover effect voor de knop */
.floating-button:hover {
    transform: scale(1.1);     /* Vergroot de knop bij hover */
}

.image-gallery {
  max-width: 800px;
  margin: 0 auto;
}

.image-item {
  margin-bottom: 30px;
  text-align: center;
}

.image-item img {
  width: 100%;
  max-width: 600px;
  cursor: pointer;
  border-radius: 8px;
  transition: transform 0.3s ease;
}

.image-item img:hover {
  transform: scale(1.02);
}

.caption {
  margin-top: 8px;
  font-size: 16px;
  color: #555;
}

/* Lightbox styling */
.lightbox {
  display: none;
  position: fixed;
  z-index: 9999;
  padding-top: 60px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.9);
  text-align: center;
}

.lightbox-content {
  max-width: 90%;
  max-height: 80vh;
}

.close {
  position: absolute;
  top: 20px;
  right: 40px;
  color: white;
  font-size: 40px;
  cursor: pointer;
}

#lightbox-caption {
  color: white;
  margin-top: 15px;
}

.prev, .next {
  position: absolute;
  top: 50%;
  font-size: 50px;
  color: white;
  cursor: pointer;
  padding: 10px;
  user-select: none;
  transform: translateY(-50%);
}

.prev {
  left: 20px;
}

.next {
  right: 20px;
}

.prev:hover, .next:hover {
  opacity: 0.7;
}