@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/raleway-latin.woff2') format('woff2');
}

@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/raleway-latin.woff2') format('woff2');
}

:root {
  --ink: #484848;
  --muted: #666;
  --brand: #234093;
  --dark: #262429;
  --paper: #fff;
  --soft: #f6f6f6;
  --content: 1200px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: clip; color: var(--muted); background: var(--paper); font: 16px/1.75 Arial, Helvetica, sans-serif; }
a { color: var(--brand); text-decoration: none; }
a:hover, a:focus-visible { text-decoration: underline; }
img { max-width: 100%; height: auto; }
iframe { display: block; width: 100%; max-width: 560px; aspect-ratio: 16 / 9; height: auto; border: 0; }
h1, h2, h3 { color: var(--ink); line-height: 1.2; }
h2 { font-size: clamp(1.8rem, 4vw, 2.8rem); text-transform: lowercase; }
.brand-heading { font-family: 'Raleway', Arial, Helvetica, sans-serif; font-weight: 700; letter-spacing: normal; text-transform: uppercase; }

.container { width: min(calc(100% - 3rem), var(--content)); margin-inline: auto; }
.site-header { min-height: 5rem; padding: 0 2rem; display: flex; align-items: center; gap: 2rem; background: #fff; position: sticky; top: 0; z-index: 20; box-shadow: 0 1px 4px rgb(0 0 0 / 10%); }
.brand { color: var(--ink); font-family: 'Raleway', Arial, Helvetica, sans-serif; font-size: 1.25rem; font-weight: 400; letter-spacing: normal; text-transform: uppercase; white-space: nowrap; }
.brand strong { color: var(--brand); font-weight: 700; }
#nav { margin-left: auto; }
#nav ul { display: flex; align-items: center; gap: 1.35rem; margin: 0; padding: 0; list-style: none; }
#nav a { color: var(--muted); font-size: .85rem; letter-spacing: .04em; text-transform: uppercase; }
.nav-toggle { display: none; margin-left: auto; border: 0; background: transparent; color: var(--ink); font-size: 1.8rem; cursor: pointer; }

#banner { min-height: clamp(17rem, 38vw, 36rem); background-color: #17171a; background-image: linear-gradient(rgb(0 0 0 / 32%), rgb(0 0 0 / 32%)), url('../images/banner.jpg'); background-position: center; background-size: cover; background-repeat: no-repeat; }
.wrapper { padding: clamp(3.5rem, 7vw, 7rem) 0; }
.wrapper.style1 { background: var(--paper); }
.wrapper.style3 { min-height: 15rem; color: #fff; background: linear-gradient(rgb(0 0 0 / 45%), rgb(0 0 0 / 45%)), url('../images/banner.jpg') center / cover fixed; }
.wrapper.style3 h2, .wrapper.style3 a { color: #fff; }
.wrapper.special { text-align: center; }
.row { display: flex; flex-wrap: wrap; gap: 2rem; }
.row > * { min-width: 0; }
.column { flex: 1 1 calc(50% - 1rem); max-width: 100%; }
.major { margin-bottom: 2rem; }
.major h2 { margin-top: 0; }
.actions { list-style: none; padding: 0; }
.anchor-target { display: block; scroll-margin-top: 1rem; }
#three { padding: 2rem 0; }
.site-footer { 
  padding: 4rem 0; 
  text-align: center; 
  background: linear-gradient(rgb(0 0 0 / 48%), rgb(0 0 0 / 48%)), url('../images/banner.jpg') center / cover no-repeat;
  color: #ffffff !important; /* Forceer wit voor de tekst */
}

/* 2. De titels (h2) in de footer */
.site-footer h2 {
  color: #ffffff !important;
  text-transform: uppercase !important; /* Forceer hoofdletters */
  font-family: 'Raleway', Arial, Helvetica, sans-serif !important;
}

/* 3. De tekst (p) in de footer */
.site-footer p {
  color: #ffffff !important;
  text-transform: none !important; /* Houd de tekst zoals hij is, of gebruik uppercase voor alles in hoofdletters */
  font-family: 'Raleway', Arial, Helvetica, sans-serif !important;
}

/* 4. De links (a) in de footer (deze waren waarschijnlijk blauw/grijs) */
.site-footer a {
  color: #ffffff !important; /* Forceer wit voor de link */
  text-transform: uppercase !important; /* Forceer hoofdletters voor de link */
  font-family: 'Raleway', Arial, Helvetica, sans-serif !important;
  text-decoration: none !important;
}
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

@media (max-width: 980px) {
  .site-header { padding-inline: 1.25rem; }
  .nav-toggle { display: block; position: relative; z-index: 30; }
  #nav { position: absolute; top: 5rem; right: 0; width: min(72vw, 22rem); padding: 1rem 1.25rem 1.5rem; background: var(--dark); box-shadow: -1rem 1rem 2rem rgb(0 0 0 / 24%); visibility: hidden; transform: translateX(100%); transition: transform .28s ease, visibility 0s linear .28s; }
  #nav.is-open { visibility: visible; transform: translateX(0); transition-delay: 0s; }
  #nav ul { display: block; }
  #nav li + li { border-top: 1px solid #555; }
  #nav a { display: block; padding: .8rem 0; color: #fff; }
  .column { flex-basis: 100%; }
  .wrapper.style3 { background-attachment: scroll; }
}

@media (min-width: 1280px) {
  #banner { background-size: 94% auto; }
}

@media (max-width: 480px) {
  body { font-size: 15px; }
  .container { width: min(calc(100% - 2rem), var(--content)); }
  .wrapper { padding-block: 3rem; }
  #banner { min-height: 14rem; }
}
