
.page-home-mark{
  position:fixed;
  left:32px;
  top:24px;
  z-index:1400;
  width:34px;
  display:flex;
  flex-direction:column;
  align-items:center;
  color:#fff;
  mix-blend-mode:difference;
  text-decoration:none;
  font-family:"Libre Caslon Display",serif;
  font-size:25px;
  line-height:.72;
  letter-spacing:-.05em;
  pointer-events:auto;
}
.page-home-mark::after{
  content:"";
  order:2;
  width:25px;
  height:1px;
  margin:7px 0;
  background:currentColor;
  opacity:.75;
}
.page-home-mark .pt-home-p{order:1}
.page-home-mark .pt-home-t{order:3}
.page-home-mark:hover{opacity:.62}
@media(max-width:900px){
  .page-home-mark{left:20px;top:18px;font-size:22px;width:30px}
  .page-home-mark::after{width:22px;margin:6px 0}
}



#partners.logo-section,
#sponsoren.logo-section{
  background:#0b0b0b !important;
  color:#f2eee6 !important;
  border-top:1px solid rgba(242,238,230,.10);
  padding-top:clamp(74px,8vw,118px);
  padding-bottom:clamp(78px,9vw,132px);
}
#sponsoren.logo-section{
  border-top:1px solid rgba(242,238,230,.16);
}
.logo-section-head{
  margin-bottom:clamp(42px,5vw,72px) !important;
}
.logo-section-head h2{
  color:#f2eee6 !important;
}
.logo-wall{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:rgba(242,238,230,.12);
  border:1px solid rgba(242,238,230,.12);
}
.logo-link{
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:34px 30px;
  background:#f2eee6;
  overflow:hidden;
  position:relative;
  transition:background .28s ease, transform .28s ease;
}
.logo-link::after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid transparent;
  pointer-events:none;
  transition:border-color .28s ease;
}
.logo-link:hover{
  background:#fffdf8;
  z-index:1;
}
.logo-link:hover::after{
  border-color:rgba(165,43,34,.50);
}
.logo-link img{
  display:block;
  width:auto;
  height:auto;
  max-width:82%;
  max-height:68px;
  object-fit:contain;
  filter:none;
  transition:transform .28s ease, opacity .28s ease;
}
.logo-link:hover img{
  transform:scale(1.035);
}
.logo-link:focus-visible{
  outline:2px solid #a52b22;
  outline-offset:-2px;
  z-index:2;
}
@media(max-width:980px){
  .logo-wall{grid-template-columns:repeat(3,minmax(0,1fr));}
  .logo-link{min-height:138px;padding:28px 24px;}
}
@media(max-width:680px){
  .logo-wall{grid-template-columns:repeat(2,minmax(0,1fr));}
  .logo-link{min-height:118px;padding:22px 18px;}
  .logo-link img{max-width:84%;max-height:56px;}
}



#partners.logo-section,
#sponsoren.logo-section{
  background:#0b0b0b !important;
  color:#f2eee6 !important;
}
.logo-wall{
  background:transparent !important;
  border:0 !important;
  gap:14px !important;
}
.logo-link{
  background:#f2eee6 !important;
  border:1px solid rgba(242,238,230,.10);
  min-height:145px;
}
.logo-link::after{
  display:none !important;
}
.logo-link:hover{
  background:#fffdf8 !important;
  transform:translateY(-2px);
}
.logo-link img{
  width:100% !important;
  max-width:100% !important;
  max-height:none !important;
  height:auto !important;
  object-fit:contain;
}
@media(max-width:680px){
  .logo-wall{gap:9px !important;}
  .logo-link{min-height:108px;padding:10px !important;}
}



#partners.logo-section,
#sponsoren.logo-section{
  background:#050505 !important;
  color:#f2eee6 !important;
}
.logo-wall{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:clamp(34px,4vw,64px) clamp(28px,4vw,60px) !important;
  background:transparent !important;
  border:0 !important;
  align-items:center;
}
.real-logo-link{
  display:flex !important;
  align-items:center;
  justify-content:center;
  min-height:110px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  transition:opacity .25s ease, transform .25s ease !important;
}
.real-logo-link::after{display:none !important;}
.real-logo-link:hover{
  background:transparent !important;
  transform:translateY(-3px) !important;
  opacity:.78;
}
.real-logo-link img{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:85% !important;
  max-height:78px !important;
  object-fit:contain !important;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  margin:0 auto !important;
  mix-blend-mode:screen;
}
@media(max-width:980px){
  .logo-wall{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media(max-width:680px){
  .logo-wall{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:30px 22px !important;
  }
  .real-logo-link{min-height:88px !important;}
  .real-logo-link img{max-height:62px !important;max-width:88% !important;}
}



#partners.logo-section,
#sponsoren.logo-section{
  background:var(--ivory) !important;
  color:var(--ink) !important;
  border-top:1px solid rgba(17,17,17,.12) !important;
  padding-top:clamp(84px,8vw,128px) !important;
  padding-bottom:clamp(92px,9vw,142px) !important;
}
#sponsoren.logo-section{
  border-top:1px solid rgba(17,17,17,.16) !important;
}
.logo-section-head{
  margin-bottom:clamp(54px,6vw,88px) !important;
}
.logo-section-head h2{
  color:var(--ink) !important;
}
.logo-wall{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:clamp(52px,6vw,88px) clamp(46px,6vw,90px) !important;
  background:transparent !important;
  border:0 !important;
  align-items:center !important;
}
.real-logo-link{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:150px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  opacity:1 !important;
  transition:transform .26s ease, opacity .26s ease !important;
}
.real-logo-link::after{
  display:none !important;
}
.real-logo-link:hover{
  background:transparent !important;
  transform:translateY(-3px) scale(1.025) !important;
  opacity:.78 !important;
}
.real-logo-link img{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:94% !important;
  max-height:118px !important;
  object-fit:contain !important;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  margin:0 auto !important;
  filter:none !important;
  mix-blend-mode:normal !important;
}
@media(max-width:980px){
  .logo-wall{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:52px 42px !important;
  }
  .real-logo-link{
    min-height:135px !important;
  }
  .real-logo-link img{
    max-height:104px !important;
  }
}
@media(max-width:620px){
  .logo-wall{
    grid-template-columns:1fr !important;
    gap:46px !important;
  }
  .real-logo-link{
    min-height:112px !important;
  }
  .real-logo-link img{
    max-height:88px !important;
    max-width:88% !important;
  }
}



.real-logo-link[aria-label="MBO Raad"] img{
  max-height:132px !important;
  max-width:96% !important;
}
.real-logo-link[aria-label="Expertisepunt Burgerschap"] img{
  max-height:136px !important;
  max-width:96% !important;
}



/* Larger logos, still on one continuous ivory field. */
.logo-wall{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:clamp(56px,6vw,92px) clamp(46px,6vw,92px) !important;
}
.real-logo-link{
  min-height:158px !important;
}
.real-logo-link img{
  max-width:95% !important;
  max-height:126px !important;
}

/* Crop legacy/publication images down to the actual visual mark. */
.logo-crop-antropia{
  overflow:hidden !important;
  height:126px !important;
  min-height:126px !important;
  position:relative;
}
.logo-crop-antropia img{
  position:absolute !important;
  width:245% !important;
  max-width:none !important;
  max-height:none !important;
  height:auto !important;
  left:-7% !important;
  top:-10% !important;
}

.logo-crop-academiehuis{
  overflow:hidden !important;
  height:126px !important;
  min-height:126px !important;
  position:relative;
}
.logo-crop-academiehuis img{
  position:absolute !important;
  width:210% !important;
  max-width:none !important;
  max-height:none !important;
  height:auto !important;
  left:-4% !important;
  top:-2% !important;
}

.logo-crop-water159{
  overflow:hidden !important;
  height:126px !important;
  min-height:126px !important;
  position:relative;
}
.logo-crop-water159 img{
  position:absolute !important;
  width:230% !important;
  max-width:none !important;
  max-height:none !important;
  height:auto !important;
  left:-66% !important;
  top:-88% !important;
}

/* Some wide fund marks deserve more width and a little less height. */
.real-logo-link[aria-label="Stichting Elise Mathilde Fonds"] img,
.real-logo-link[aria-label="Janivo Stichting"] img,
.real-logo-link[aria-label="Emanuel Snatager Foundation"] img,
.real-logo-link[aria-label="Stichting Palazzo Pubblico Amsterdam"] img{
  max-width:98% !important;
  max-height:112px !important;
}

@media(max-width:980px){
  .logo-wall{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:620px){
  .logo-wall{grid-template-columns:1fr !important;}
  .real-logo-link{min-height:124px !important;}
  .real-logo-link img{max-height:100px !important;}
}



.real-logo-link[aria-label="Antropia, Cultuur- en Congrescentrum"] img,
.real-logo-link[aria-label="Academiehuis / Grote Kerk Zwolle"] img,
.real-logo-link[aria-label="Janivo Stichting"] img{
  position:static !important;
  width:auto !important;
  height:auto !important;
  max-width:96% !important;
  max-height:132px !important;
  object-fit:contain !important;
  left:auto !important;
  top:auto !important;
}
.real-logo-link[aria-label="Antropia, Cultuur- en Congrescentrum"],
.real-logo-link[aria-label="Academiehuis / Grote Kerk Zwolle"],
.real-logo-link[aria-label="Janivo Stichting"]{
  overflow:visible !important;
  height:auto !important;
  min-height:158px !important;
}



/*
  Three real visual columns:
  left column anchors left, middle centers, right anchors right.
  Every link occupies the full grid cell, so differing logo widths no longer
  make the left-hand column appear to wander horizontally.
*/
.logo-wall{
  align-items:stretch !important;
}
.logo-wall .real-logo-link{
  width:100% !important;
  min-width:0 !important;
}

/* Desktop: align the visible ink consistently by column. */
@media(min-width:981px){
  .logo-wall .real-logo-link:nth-child(3n+1){
    justify-content:flex-start !important;
    text-align:left !important;
  }
  .logo-wall .real-logo-link:nth-child(3n+2){
    justify-content:center !important;
    text-align:center !important;
  }
  .logo-wall .real-logo-link:nth-child(3n){
    justify-content:flex-end !important;
    text-align:right !important;
  }

  .logo-wall .real-logo-link:nth-child(3n+1) img{
    margin-left:0 !important;
    margin-right:auto !important;
    object-position:left center !important;
  }
  .logo-wall .real-logo-link:nth-child(3n+2) img{
    margin-left:auto !important;
    margin-right:auto !important;
    object-position:center center !important;
  }
  .logo-wall .real-logo-link:nth-child(3n) img{
    margin-left:auto !important;
    margin-right:0 !important;
    object-position:right center !important;
  }
}

/* Tablet: two straight visual columns. */
@media(max-width:980px) and (min-width:621px){
  .logo-wall .real-logo-link:nth-child(2n+1){
    justify-content:flex-start !important;
  }
  .logo-wall .real-logo-link:nth-child(2n){
    justify-content:flex-end !important;
  }
  .logo-wall .real-logo-link:nth-child(2n+1) img{
    margin-left:0 !important;
    margin-right:auto !important;
    object-position:left center !important;
  }
  .logo-wall .real-logo-link:nth-child(2n) img{
    margin-left:auto !important;
    margin-right:0 !important;
    object-position:right center !important;
  }
}

/* Mobile remains centered. */
@media(max-width:620px){
  .logo-wall .real-logo-link{
    justify-content:center !important;
  }
  .logo-wall .real-logo-link img{
    margin-left:auto !important;
    margin-right:auto !important;
    object-position:center center !important;
  }
}



/* Definitive logo alignment: every cell uses the same centered stage. */
.logo-wall{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  align-items:stretch !important;
}

.logo-wall .real-logo-link,
.logo-wall .logo-link{
  width:100% !important;
  min-width:0 !important;
  min-height:160px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  padding:0 !important;
  margin:0 !important;
}

.logo-wall .real-logo-link img,
.logo-wall .logo-link img{
  display:block !important;
  position:static !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;

  width:auto !important;
  height:auto !important;
  max-width:88% !important;
  max-height:122px !important;

  margin-left:auto !important;
  margin-right:auto !important;
  margin-top:auto !important;
  margin-bottom:auto !important;

  object-fit:contain !important;
  object-position:center center !important;
  transform:none !important;
}

/* Override all earlier per-column / crop alignment rules. */
.logo-wall .real-logo-link:nth-child(n),
.logo-wall .logo-link:nth-child(n){
  justify-content:center !important;
  text-align:center !important;
}
.logo-wall .real-logo-link:nth-child(n) img,
.logo-wall .logo-link:nth-child(n) img{
  margin-left:auto !important;
  margin-right:auto !important;
  object-position:center center !important;
}

/* Special cases retain size only, never positioning. */
.real-logo-link[aria-label="MBO Raad"] img,
.real-logo-link[aria-label="Expertisepunt Burgerschap"] img,
.real-logo-link[aria-label="Antropia, Cultuur- en Congrescentrum"] img,
.real-logo-link[aria-label="Academiehuis / Grote Kerk Zwolle"] img,
.real-logo-link[aria-label="Janivo Stichting"] img{
  position:static !important;
  left:auto !important;
  top:auto !important;
  margin:auto !important;
  object-position:center center !important;
}

/* Neutralize old crop containers that could shift the visible logo. */
.logo-crop-antropia,
.logo-crop-academiehuis,
.logo-crop-water159{
  overflow:visible !important;
  height:auto !important;
  min-height:160px !important;
  position:relative !important;
}
.logo-crop-antropia img,
.logo-crop-academiehuis img,
.logo-crop-water159 img{
  position:static !important;
  width:auto !important;
  height:auto !important;
  max-width:88% !important;
  max-height:122px !important;
  left:auto !important;
  top:auto !important;
  margin:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
}

@media(max-width:980px){
  .logo-wall{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .logo-wall .real-logo-link,
  .logo-wall .logo-link{
    min-height:145px !important;
    justify-content:center !important;
  }
}

@media(max-width:620px){
  .logo-wall{
    grid-template-columns:1fr !important;
  }
  .logo-wall .real-logo-link,
  .logo-wall .logo-link{
    min-height:122px !important;
  }
  .logo-wall .real-logo-link img,
  .logo-wall .logo-link img{
    max-width:84% !important;
    max-height:96px !important;
  }
}



/* Partners only: one identical centred logo stage per grid cell. */
#partners .logo-wall{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  column-gap:clamp(54px,6vw,92px) !important;
  row-gap:clamp(54px,5.5vw,84px) !important;
  align-items:start !important;
}

#partners .logo-wall > .logo-link{
  width:100% !important;
  height:164px !important;
  min-height:164px !important;
  max-height:164px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  margin:0 !important;
  position:relative !important;
  overflow:visible !important;
  background:transparent !important;
}

/* The image itself always occupies the same logical stage. */
#partners .logo-wall > .logo-link > img{
  position:absolute !important;
  inset:50% auto auto 50% !important;
  transform:translate(-50%,-50%) !important;

  width:auto !important;
  height:auto !important;
  max-width:86% !important;
  max-height:118px !important;

  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
  object-position:center center !important;
}

/* Remove all legacy partner-specific positioning/crop behaviour. */
#partners .logo-crop-antropia,
#partners .logo-crop-academiehuis,
#partners .logo-crop-water159,
#partners .real-logo-link[aria-label="MBO Raad"],
#partners .real-logo-link[aria-label="Expertisepunt Burgerschap"],
#partners .real-logo-link[aria-label="Antropia, Cultuur- en Congrescentrum"],
#partners .real-logo-link[aria-label="Academiehuis / Grote Kerk Zwolle"],
#partners .real-logo-link[aria-label="Museum Huis Doorn"],
#partners .real-logo-link[aria-label="Vrijheidskwartier"],
#partners .real-logo-link[aria-label="Water 159"]{
  width:100% !important;
  height:164px !important;
  min-height:164px !important;
  max-height:164px !important;
  display:grid !important;
  place-items:center !important;
  overflow:visible !important;
}

#partners .logo-crop-antropia img,
#partners .logo-crop-academiehuis img,
#partners .logo-crop-water159 img,
#partners .real-logo-link[aria-label="MBO Raad"] img,
#partners .real-logo-link[aria-label="Expertisepunt Burgerschap"] img,
#partners .real-logo-link[aria-label="Antropia, Cultuur- en Congrescentrum"] img,
#partners .real-logo-link[aria-label="Academiehuis / Grote Kerk Zwolle"] img,
#partners .real-logo-link[aria-label="Museum Huis Doorn"] img,
#partners .real-logo-link[aria-label="Vrijheidskwartier"] img,
#partners .real-logo-link[aria-label="Water 159"] img{
  position:absolute !important;
  inset:50% auto auto 50% !important;
  transform:translate(-50%,-50%) !important;
  width:auto !important;
  height:auto !important;
  max-width:86% !important;
  max-height:118px !important;
  margin:0 !important;
  left:50% !important;
  top:50% !important;
  right:auto !important;
  bottom:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
}

/* Keep deliberately wider wordmarks large, but still on the exact same centre. */
#partners .real-logo-link[aria-label="Erasmus University Rotterdam"] img,
#partners .real-logo-link[aria-label="Amsterdam Conference Centre, Beurs van Berlage"] img,
#partners .real-logo-link[aria-label="Nederlands Instituut voor Beeld & Geluid"] img,
#partners .real-logo-link[aria-label="Academiehuis / Grote Kerk Zwolle"] img,
#partners .real-logo-link[aria-label="Vrijheidskwartier"] img{
  max-width:92% !important;
}

@media(max-width:980px){
  #partners .logo-wall{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:620px){
  #partners .logo-wall{
    grid-template-columns:1fr !important;
  }
  #partners .logo-wall > .logo-link{
    height:132px !important;
    min-height:132px !important;
    max-height:132px !important;
  }
  #partners .logo-wall > .logo-link > img{
    max-height:96px !important;
  }
}



/* Pull the Partners grid inward and centre the complete composition. */
#partners .logo-wall{
  width:min(100%, 1120px) !important;
  margin-left:auto !important;
  margin-right:auto !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  column-gap:clamp(44px,4.5vw,72px) !important;
  row-gap:clamp(50px,5vw,78px) !important;
}

/* Keep every logo centred on the exact centreline of its own column. */
#partners .logo-wall > .logo-link{
  width:100% !important;
  display:grid !important;
  place-items:center !important;
}
#partners .logo-wall > .logo-link > img{
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  margin:0 !important;
  object-position:center center !important;
}

/* Final orphan item: centre it under the full grid instead of leaving it on the far left. */
@media(min-width:981px){
  #partners .logo-wall > .logo-link:last-child:nth-child(3n+1){
    grid-column:2 !important;
  }
}

@media(max-width:980px) and (min-width:621px){
  #partners .logo-wall{
    width:min(100%, 760px) !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:620px){
  #partners .logo-wall{
    width:min(100%, 420px) !important;
    grid-template-columns:1fr !important;
  }
}



#transparantie{background:#111;color:#f2eee6}
#transparantie .section-note{color:rgba(242,238,230,.72)}
.transparency-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(242,238,230,.18);border:1px solid rgba(242,238,230,.18)}
.transparency-card{background:#111;padding:30px;min-height:210px;display:flex;flex-direction:column;justify-content:space-between;transition:background .22s ease}
.transparency-card:hover{background:#181818}
.transparency-card small{color:#a52b22;font-size:9px;letter-spacing:.17em;text-transform:uppercase}
.transparency-card h3{font-family:"Libre Caslon Display",serif;font-weight:400;font-size:clamp(28px,3vw,42px);margin:18px 0 12px}
.transparency-card p{font-size:13px;line-height:1.65;color:rgba(242,238,230,.68);margin:0 0 24px}
.transparency-card .arrow{font-size:20px;color:#a52b22}
@media(max-width:780px){.transparency-grid{grid-template-columns:1fr}.transparency-card{min-height:170px}}



#transparantie{
  padding-top:64px !important;
  padding-bottom:64px !important;
  border-top:0 !important;
}
#transparantie .section-head{
  margin-bottom:34px !important;
}
@media(max-width:800px){
  #transparantie{
    padding-top:46px !important;
    padding-bottom:46px !important;
  }
}
