/*
  EMSI Europe – Basisthema (CSS)
  --------------------------------
  Deze stylesheet is bewust eenvoudig gehouden en rijkelijk van commentaar
  voorzien zodat je gemakkelijk kleuren, lettertypes en afstanden kunt aanpassen.

  SNEL AANPASSEN? (zoek en vervang desnoods met je editor)
  - Primair merk-kleur:    var(--brand)
  - Secundaire kleur:      var(--brand-2)
  - Achtergrond:           var(--bg)
  - Tekstkleur:            var(--text)
  - Max breedte content:   --container
*/
:root{
  /* Kleurinstellingen */
  --brand: #0b5cab;          /* Hoofdkleur (blauw) */
  --brand-2: #0a3f78;        /* Donkerdere variant */
  --accent: #e8f2ff;         /* Lichte accent achtergrond */
  --text: #1b1b1b;           /* Standaard tekstkleur */
  --muted: #6b7280;          /* Gedempte subtitelkleur */
  --bg: #ffffff;             /* Pagina-achtergrond */
  --border: #e5e7eb;         /* Lichte lijnkleur */
  --container: 1100px;       /* Maximale breedte van de content */
  --logo-h: 128px;            /* standaard logo-hoogte op desktop */
}

@media (max-width: 768px){
  :root{ --logo-h: 64px; }   /* iets kleiner op tablet/mobiel */
}

/* Logo blok */
.logo{
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  color: #fff;               /* header is donkerblauw in jouw thema */
  text-decoration: none;
  font-weight: 700;
  letter-spacing: .5px;
  white-space: nowrap;
}
.logo-mark{
  height: var(--logo-h);
  width: auto;               /* behoud aspect ratio */
  flex: 0 0 auto;
  display: block;
}
.logo-text{
  display: inline-block;
  line-height: 1;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Globale resets */
*{ box-sizing: border-box; }
html, body{ height: 100%; }
body{
  margin: 0;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  line-height: 1.6;
  color: var(--text);
  background: var(--bg);
}

/* Container hulpklaas – centreert content en beperkt breedte */
.container{
  width: min(100% - 2rem, var(--container));
  margin-inline: auto;
}

/* Koppen & typografie */
h1,h2,h3{
  line-height: 1.25;
  margin: 0 0 .5rem 0;
}

p{ margin: 0 0 1rem 0; }
small{ color: var(--muted); }

/* Header met logo en menuknop voor mobiel */
.site-header{
  position: sticky;
  top: 0; z-index: 50;
  background: linear-gradient(180deg, var(--brand) 0%, var(--brand-2) 100%);
  color: #fff;
}
.header-inner{
  display: flex; align-items: center; justify-content: space-between;
  padding: .75rem 0;
}
.logo{
  color: #fff; text-decoration: none; font-weight: 700; letter-spacing: .5px;
}
.menu-toggle{
  background: rgba(255,255,255,.15); color:#fff; border: 1px solid rgba(255,255,255,.3);
  padding: .4rem .7rem; border-radius: .4rem; cursor: pointer;
}

/* Navigatie */
.site-nav{ background: var(--accent); border-bottom: 1px solid var(--border); }
.site-nav ul{ list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; }
.site-nav a{ display: block; padding: .8rem 1rem; color: #0a0a0a; text-decoration: none; }
.site-nav a:hover, .site-nav a.active{ color: var(--brand-2); font-weight: 600; }

/* Hoofdcontent */
main.container{ padding: 1.5rem 0 3rem; }

/* Buttons */
.button{
  display: inline-block; background: var(--brand); color: #fff; text-decoration: none; border-radius: .4rem;
  padding: .5rem .9rem; border: 1px solid var(--brand-2);
}
.button:hover{ background: var(--brand-2); }

/* PDF lijst */
.pdf-list ul{ margin: 0; padding-left: 1.25rem; }
.pdf-list li{ margin: .35rem 0; }

/* PDF embed container */
.pdf-embed{ border: 1px solid var(--border); border-radius: .5rem; overflow: hidden; }

/* Footer */
.site-footer{ border-top: 1px solid var(--border); background: #fafafa; color: #111; }
.site-footer .container{ padding: 1rem 0; }

/* Responsiveness: onder 768px stapelen we het menu onder elkaar */
@media (max-width: 768px){
  .site-nav ul{ display: none; }
  .site-nav.open ul{ display: block; }
  .site-nav a{ padding: .75rem 1rem; border-top: 1px solid var(--border); }
}
