@font-face { font-family: "Poppins"; font-weight: 700; font-display: swap; src: url("fonts/poppins-latin-700-normal.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 400; font-display: swap; src: url("fonts/inter-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Inter"; font-weight: 600; font-display: swap; src: url("fonts/inter-latin-600-normal.woff2") format("woff2"); }

:root {
  --navy: #152238;
  --navy-licht: #3A4D70;
  --grijsblauw: #7B8CA3;
  --lichtgrijs: #EAEFF5;
  --goud: #FFB000;
}

* { box-sizing: border-box; }

html { background: var(--navy); }

body {
  margin: 0;
  min-height: 100vh;
  background: radial-gradient(ellipse at top, var(--navy-licht) 0%, var(--navy) 60%);
  color: var(--lichtgrijs);
  font: 400 16px/1.55 "Inter", system-ui, sans-serif;
  -webkit-text-size-adjust: 100%;
}

.kaart { max-width: 34rem; margin: 0 auto; padding: 2.5rem 1rem 2rem; }

.kop { text-align: center; margin-bottom: 2rem; }
.logo { width: 96px; height: 96px; border-radius: 50%; border: 2px solid var(--goud); }
h1, h2 { font-family: "Poppins", system-ui, sans-serif; font-weight: 700; }
h1 { margin: 0.75rem 0 0; font-size: 1.75rem; letter-spacing: 0.01em; }
.ondertitel { margin: 0.1rem 0 1rem; color: var(--goud); font-weight: 600; text-transform: uppercase; letter-spacing: 0.12em; font-size: 0.8rem; }
.intro { margin: 0; color: var(--lichtgrijs); opacity: 0.85; font-size: 0.95rem; }

section { margin-top: 1.75rem; }
h2 { font-size: 0.95rem; color: rgba(234, 239, 245, 0.75); text-transform: uppercase; letter-spacing: 0.08em; margin: 0 0 0.75rem; text-align: center; }

.knoppen { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.75rem; }
.knop {
  display: block;
  padding: 0.95rem 1.1rem;
  border: 1.5px solid var(--goud);
  border-radius: 0.75rem;
  background: rgba(21, 34, 56, 0.6);
  color: var(--lichtgrijs);
  text-align: center;
  text-decoration: none;
  font-weight: 600;
  transition: background 0.15s, color 0.15s;
}
.knop:hover, .knop:focus-visible { background: var(--goud); color: var(--navy); outline: none; }

.voet { margin-top: 2.5rem; text-align: center; font-size: 0.85rem; }
.voet nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.4rem 1.1rem; }
.voet a { color: var(--grijsblauw); text-decoration: none; }
.voet a:hover, .voet a:focus-visible { color: var(--goud); }

/* Tekstpagina's (voorwaarden, privacy, contact, over) */
.kop-klein { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 1.5rem; }
.kop-klein .logo { width: 48px; height: 48px; }
.kop-klein a { color: var(--lichtgrijs); text-decoration: none; font-family: "Poppins", system-ui, sans-serif; font-weight: 700; }
.tekst { font-size: 0.95rem; overflow-wrap: anywhere; }
.tekst h1 { font-size: 1.4rem; margin: 0 0 0.5rem; }
.tekst a { color: var(--goud); }
.tekst em { color: var(--grijsblauw); }
