/* algemene body */
body {
  background-color: #ffffff; /* achtergrondkleur van de hele pagina (wit) */
  margin: 0; /* verwijdert standaard buitenruimte */
  padding: 0; /* verwijdert standaard binnenruimte */
}

/* titel in header */
header h3{
  font-size: 70px; /* maakt de tekst groot */
  margin-bottom: 10px; /* ruimte onder de tekst */
}

/* navigatiebalk */
ul {
  list-style-type: none; /* haalt bolletjes weg */
  margin: 0;
  padding: 0;
  overflow: hidden; /* zorgt dat inhoud netjes blijft */
  background-color: #000000; /* zwarte achtergrond */
  box-shadow: 0 2px 10px rgba(0,0,0,1); /* schaduw onder de balk */
  position: fixed; /* blijft bovenaan staan bij scrollen */
  top: 0;
  width: 100%; /* volle breedte */
}  

ul li {
  float: left; /* zet menu-items naast elkaar */
}

ul li a {
  display: block; /* maakt klikbaar blok */
  color: white; /* tekst wit */
  text-align: center;
  padding:17px 20px; /* ruimte in de knop */
  text-decoration: none; /* haalt onderstreping weg */
  transition: 0.3s; /* animatie bij hover */
}

/* hover effect rood */
ul li a:hover:not(.active) {
  background-color: #ff0000; /* wordt rood als je erover gaat */
}


{
  box-sizing: border-box; 
  /* dit hoort zo: * { box-sizing: border-box; }
     zorgt dat padding en border in de breedte worden meegerekend */
}

/* layout met grid (3 vakken) */
.row {
  display: grid; /* gebruikt grid layout */
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); 
  /* maakt automatische kolommen die minimaal 250px zijn */
  gap: 20px; /* ruimte tussen kolommen */
}

/* stijl van elk vak (card) */
.column {
  background: white;
  border-radius: 15px; /* afgeronde hoeken */
  overflow: hidden; /* zorgt dat afbeelding niet buiten vak gaat */
  box-shadow: 0 5px 15px rgba(0,0,0,0.08); /* zachte schaduw */
  transition: transform 0.3s, box-shadow 0.3s; /* animatie */
  border: 1px solid gray;
}

/* afbeelding in vak */
.column img { 
 width: 100%; /* hele breedte */
 height: 180px;
 object-fit: cover; /* afbeelding netjes bijsnijden */
}

/* tekst in vak */
.column-content { 
  padding: 10px;
}

.column p { 
  margin-left: 20px;
  margin-right: 20px;
}

/* knop stijl */
.knop {
 display: inline-block;
 margin-top: 10px;
 padding: 10px 15px;
 background: #ff7e5f; /* oranje kleur */
 color: white;
 border-radius: 8px;
 text-decoration: none;
 transition: 0.3s;
}

/* knop hover */
.knop:hover { 
  background: #e5674f; /* iets donkerder */
}

/* kopjes */
h1{
  color: black;
  text-align: left;
  font-size: 40px;
  text-shadow: 2px 2px 5px gray; /* schaduw achter tekst */
  margin-left: 30px;
}

h2 {
  color: black;
  text-align: center;
  font-size: 20px;
}

h4 {
  color: black;
  text-align: left;
  font-size: 20px;
  margin-left: 20px;
}

h5 {
  color: black;
  text-align: left;
  font-size: 15px;
  margin-left: 20px;
}

/* footer (onderkant pagina) */
footer {
  background-color: white;
  padding: 10px;
  text-align: center;
  color: black;
}

/* formulier */
form {
  border-radius: 8px;
  background-color: #f2f2f2; /* lichtgrijs */
  padding: 20px;
  margin: 40px;
}

label {
  display: block; /* label op nieuwe regel */
}

/* invoervelden */
input[type=text], select {
  width: 100%; /* volle breedte */
  padding: 12px;
  margin: 10px 0;
  display: inline-block;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
}

/* verzend knop */
input[type=submit] {
  width: 100%;
  background-color: #7A9E7E; /* groen */
  color: white;
  padding: 14px;
  margin: 8px 0;
  border: none;
  border-radius: 4px;
  cursor: pointer; /* handje cursor */
}

/* hover op knop */
input[type=submit]:hover {
  background-color: #45a049;
}

/* container layout */
.container {
  display: flex; /* zet elementen naast elkaar */
  gap: 5px;
  padding: 5px;
}

/* linker vakken */
.linkso, .linksb {
  flex: 1; /* kleiner vak */
  background: white;
  padding: 0px;
  border-radius: 15px;
  height: 300px;
  overflow: hidden;
  box-shadow: 0 5px 15px rgba(0,0,0,0.08);
}

/* rechter vakken */
.rechtso, .rechtsb {
  flex: 2; /* groter vak */
  background: white;
  padding: 0px;
  border-radius: 15px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.08);
}

/* specifieke hoogtes */
.rechtso {
  height: 500px;
}

.rechtsb {
  height: 300px;
}

/* afbeelding in links vak */
.linksb img{
 width: 100%;
 height: 100%;
 object-fit: cover;
}

/* tekst beschrijving */
.omschrijving {
  font-size: 18px;
  line-height: 1.6; /* regelafstand */
  margin-bottom: 25px;
  color: #2f3e4e;
  margin-left: 10px;
}

/* info blok */
.info {
  display: flex;
  flex-direction: column; /* onder elkaar */
  gap: 15px;
  margin-left: 10px;
}

/* kleine info stukjes */
.info-stukjes {
  display: flex;
  align-items: center;
  font-size: 18px;
  margin-left: 10px;
}

/* iconen */
.icon { 
  font-size: 22px;
  margin-right: 12px;
  margin-left: 10px;
}