/* =========================  12/126 container breedte van 1000 naar 1200 verhoogd ivm side menu
   Base
   ========================= 

Alles OK, behalve resize glitch 500–600 */

body {
  color: #222;
  font-family: 'Roboto', sans-serif;
  font-size: 1em;
  line-height: 1.3;
  background: linear-gradient(white 65%, rgb(34, 92, 146) 92%);
  margin: 0;
}

h1, h2, h3, h4 {
  font-family: 'Roboto', sans-serif;
}

hr {
  border: none;
  border-top: 1px solid #000;
  height: 1px;
}

/* =========================
   Header
   ========================= */

header {
  background-image: url(/afbeeldingen/Endless_Summer.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  padding: 3em 0;
  text-align: center;
}

header a {
  text-decoration: none;
  color: white;
  text-shadow: 10px 1px 10px rgb(29, 80, 128);
  letter-spacing: .03em;
  font-size: .9em;
}

header .tagline {
  color: white;
  margin-top: 0.5em;
  font-size: 1.1em;
  opacity: 0.9;
}

/* =========================
   Card container (.nav-aa)
   ========================= */

div.nav-aa {
  width: 90%;
  margin: -40px auto 0 auto;
  background-color: white;
  box-shadow: 0 0 10px #444;
  border-radius: 4px;
  overflow: visible;
}

/* Desktop-ish */
@media screen and (min-width: 1200px) {
  div.nav-aa {
    max-width: 1200px;
  }
}
/* =========================
   Menu (scoped to .site-nav)
   ========================= */

.site-nav {
  position: relative; /* CRUCIAAL: voorkomt overlap met content */
}

.site-nav p.menuknop {
  font-family: courier, monospace;
  font-size: 28px;
  margin: 0;
  text-align: right;
  background-color: rgba(34, 92, 146, 0.85);
  padding: 0.35em 0.55em;
}

.site-nav p.menuknop a {
  color: white;
  text-decoration: none;
}

.site-nav ul {
  background-color: rgba(34, 92, 146, 0.85);
  display: none;          /* mobiel: verborgen tot klik */
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.site-nav ul li {
  border-top: 1px solid darkgrey;
  padding: .7em .4em .6em .4em;
}

.site-nav a {
  color: white;
  text-decoration: none;
}

.site-nav ul li:hover {
  background-color: #5583ad;
}

.site-nav ul li.submenu {
  position: relative;
}

.site-nav ul li.submenu > a:after {
  content: " \025BE";
}

.site-nav ul li.submenu:hover ul {
  box-sizing: border-box;
  background-color: #5583ad;
  display: block;
  width: 50%;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 2;
}

.site-nav li li:first-child {
  border-top: none;
}

.site-nav li li a:hover {
  color: red;
}

/* Active menu item */
#hoofdmenu a.active {
  color: red;
  pointer-events: none;
  cursor: default;
}

#hoofdmenu a.active:hover {
  color: red;
}
/* =========================
   Sticky site menu
   ========================= */

#site-menu {
  position: sticky;
  top: 0;
  z-index: 1200;

  /* zorg dat content er niet doorheen scrollt */
  background: #ffffff;
}
#site-menu {
  position: -webkit-sticky; /* iOS Safari */
  position: sticky;
  top: 0;
  z-index: 1200;
  background: #fff;
}


/* =========================
   Breadcrumbs
   ========================= */

.breadcrumb {
  margin: 0.6em 1em 1.0em 1em;
  font-size: 0.85em;
  color: #666;
}

.breadcrumb a {
  color: #666;
  text-decoration: none;
}

.breadcrumb a:hover {
  color: rgb(29, 80, 128);
  text-decoration: underline;
}

.breadcrumb span {
  color: #999;
}

.breadcrumb-bar {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 0 1em;
  margin: 0.6em 0 1.2em 0;
  font-size: 0.85em;
  color: #666;
}

.breadcrumb {
  margin: 0;
}

.breadcrumb-updated {
  white-space: nowrap;
  color: #999;
  font-style: italic;
}

/* label via CSS */
.breadcrumb-updated::before {
  content: "Last updated: ";
}

/* automatisch verbergen als leeg */
.breadcrumb-updated:empty {
  display: none;
}


/* =========================
   Article / content
   ========================= */

article.content {
  padding: 1em;
  text-align: justify;
}

article.content h1 {
  font-size: 1.8em;
  color: rgb(29, 80, 128);
  text-align: left;
  margin-top: 0.2em;
}

article.content h2 {
  color: rgb(29, 80, 128);
  font-size: 1.4em;
  margin-top: 1.3em;
  text-align: left;
}

article.content h3 {
  color: dimgrey;
  font-size: 1em;
  margin-top: 1em;
  text-align: right;
}

article.content h4 {
  font-size: 1.4em;
  color: rgb(29, 80, 128);
  text-align: center;
}


/* verwijderd op 7/1/26
  ==Images==
article.content img.rechts,
article.content img.links,
article.content img.center {
  box-sizing: border-box;
  display: block;
  margin: 0.5em auto;
  max-width: 100%;
} */

/* op 7-1-26 toegevoegd: */

/* Images inside article */
article.content img {
  box-sizing: border-box;
  max-width: 100%;
  height: auto;
}

/* Legacy float images (if used) */
article.content img.rechts {
  float: right;
  margin: 0.4em 0 0.8em 1.4em; /* ruimte links van de foto,1.4 was o.8 = meeer ruimte */
}

article.content img.links {
  float: left;
  margin: 0.4em 0.8em 1.4em 0; /* ruimte rechts van de foto 1.4 was 0.8 voor meer ruimte omloop tekst */
}

/* Centered image */
article.content img.center {
  display: block;
  margin: 0.5em auto;
}
/*toegevoegd tot hier op 7-1-26 */

}

/* =========================
   Pager (Prev / Index / Next)
   ========================= */

follow.pager {
  display: inline-flex;
  align-items: center;
  gap: 0.6em;
  margin: 1.2em 0 0.8em auto;

  align-self: flex-end;   /* flex parent */
  float: right;           /* non-flex fallback */
  clear: both;
}

follow.pager a {
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 5px;
}

follow.pager a:hover {
  background-color: #ddd;
  color: red;
}

follow.pager a.previous {
  background-color: #f1f1f1;
  color: black;
}

follow.pager a.next {
  background-color: #5583ad;
  color: white;
}

follow.pager index a.index {
  background-color: #ffffff;
  color: #1d5080;
  border: 1px solid #000;
}



/* =========================
   Footer
   ========================= */

.site-footer,
footer {
  background-color: rgb(34, 92, 146);
  color: white;
  font-size: .9em;
  padding: 2em;
  text-align: center;
  margin: 0;
  clear: both;
}

.site-footer a,
footer a {
  color: white;
  text-decoration: none;
}

.site-footer a:hover,
footer a:hover {
  text-decoration: underline;
}


/* =========================
   Responsive
   ========================= */

  @media screen and (min-width: 500px) {
  header {
    padding: 6em 0.5em;
  }

  div.nav-aa {
    margin: -125px auto 0 auto;
  }

  /* Desktop menu: altijd zichtbaar, hamburger weg */
  .site-nav p.menuknop {
    display: none;
  }

  .site-nav > ul {
    display: flex !important;
    justify-content: space-around;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
  }

  .site-nav > ul > li:first-child {
    border-top-left-radius: 4px;
  }

  .site-nav > ul > li:last-child {
    border-top-right-radius: 4px;
  }

  .site-nav > ul > li {
    border-top: none;
  }

  .site-nav ul li.submenu:hover ul {
    width: 8em;
    left: 0;
    top: 100%;
    flex-direction: column;
    border-top: 1px solid darkgrey;
  }

  img.rechts {
    float: right;
    margin: 0.4em 0 0.4em .8em;
  }

  img.links {
    float: left;
    margin: 0.4em .8em 0.4em 0;
  }

  img.center {
    margin-left: auto;
    margin-right: auto;
  }
}

  @media screen and (min-width: 700px) {
  div.nav-aa {
    margin: -60px auto 0 auto;
  }
}

/* zorgt voor linker kolom bovenaan op mobiel */

@media (max-width: 700px) {
  .content-with-sidebar {
    flex-direction: column;
  }

  .content-with-sidebar .image-column {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8em;
  }

  .content-with-sidebar .image-column img {
    max-width: 120px;
  }
}

/* einde linker kolom boven aan*/

/* toegevoegd*/
@media screen and (min-width: 600px) and (max-width: 1024px) and (orientation: portrait) {
  div.nav-aa {
    margin: -110px auto 0 auto;
  }
}

/*toegevoegd samsung landscape*/
@media screen and (max-height: 450px) and (orientation: landscape) {
  div.nav-aa {
    margin: -140px auto 0 auto;
  }
}


@media screen and (min-width: 1200px) {
  header {
    padding: 8em 0.5em;
  }

  header h1 {
    font-size: 4em;
  }

  div.nav-aa {
    max-width: 1200px;
  }

  .site-nav > ul {
    justify-content: center;
  }

  .site-nav > ul > li {
    margin: 0 .7em;
  }

  iframe {
    border: none;
  }
}

/* FIX 1: submenu niet afknijpen */
div.nav-aa { overflow: visible; } /*ook bovenstaand gewijzigd in visible, was hidden*/

/* FIX 1b: submenu kan scrollen als het te hoog wordt */
.site-nav ul li.submenu:hover ul {
  max-height: 70vh;
  overflow-y: auto;
}

/* FIX 2: footer weer vloeiend */
.site-footer,
footer {
  background: linear-gradient(transparent, rgb(34, 92, 146));
}

article::after { content:""; display:block; clear:both; }
img.rechts, img.links { max-width:100%; height:auto; }

/* === Breadcrumb + Updated bar === */
.breadcrumb-bar {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin: 0.6em 0 1.2em 0;
  font-size: 0.85em;
  color: #666;
}

/* bestaande breadcrumb */
.breadcrumb {
  margin: 0;
}

/* updated datum rechts */
.breadcrumb-updated {
  white-space: nowrap;
  color: #999;
  font-style: italic;
}

/* label via CSS (niet in HTML) */
.breadcrumb-updated::before {
  content: "Last updated: ";
}

/* automatisch verbergen als leeg */
.breadcrumb-updated:empty {
  display: none;
}

/* === Mobiel gedrag === */
@media (max-width: 600px) {
  .breadcrumb-bar {
    flex-direction: column;
    align-items: flex-start;
  }

  .breadcrumb-updated {
    margin-top: 0.3em;
  }
}
.footer-support a {
  color: #cfe3f5;              /* lichtere tint van wit */
  text-decoration: underline;
  font-weight: 500;
}

.footer-support a:hover {
  color: #ffffff;
  text-decoration: underline;
}
.footer-support a:hover {
  color: red;
  text-decoration: underline;
}
footer a:hover {
  color: red;
  text-decoration: underline;
}
figure.image-block {
  margin: 0.4em 0 0.8em 0;
  max-width: 100%;
}

figure.image-block img {
  display: block;
  max-width: 100%;
  height: auto;
}

figure.image-block figcaption {
  font-size: 0.85em;
  color: #666;
  margin-top: 0.3em;
  line-height: 1.3;
}

/*toegevoegd op 7-1-26 om plaatje te centreren*/

figure.image-block.center {
  clear: both;
  text-align: center;
}

figure.image-block.center img {
  margin: 0 auto;
}


/* Float support, compatible with your existing .links / .rechts */
/*gewijzigd op 7-1-26*/
/*figure.image-block.links {
  float: left;
  margin-right: 0.8em;
}

figure.image-block.rechts {
  float: right;
  margin-left: 0.8em;
}*/

/* bovenstaand vervangen door: */

figure.image-block.links  { 
    float: left;  
    margin: 0.4em 1.4em 0.8em 0; 
}

figure.image-block.rechts { 
    float: right; 
    margin: 0.4em 0 0.8em 1.4em; 
}


/* Chapter list (index pages) */
.chapter-intro {
  margin: 1em 0 0.5em 1.2em;
  font-size: 0.95em;
  color: #444;
}

.chapter-list {
  list-style: none;
  margin: 0.5em 0 1.5em 0;
  padding-left: 1.2em;     /* inspringing links */
  padding-right: 1.2em;    /* ✅ lucht rechts (chips niet tegen de muur) */
}

.chapter-list li {
  display: grid;
  grid-template-columns: auto 1fr max-content;
  align-items: center;
  gap: 0.6em;

  position: relative;
  padding: 0.32em 0 0.32em 1.1em;  /* compact + ruimte voor bullet */
  line-height: 1.35;
  border-bottom: 1px solid #eee;
}

.chapter-list li:last-child {
  border-bottom: none;
}

/* Bullet icon */
.chapter-list li::before {
  content: "›";
  position: absolute;
  left: 0;
  top: 0.45em;
  color: rgb(29, 80, 128);
  font-size: 1.1em;
  line-height: 1;
}

/* Link */
.chapter-list a {
  grid-column: 2;
  text-decoration: none;
}

.chapter-list a:hover {
  color: red;              /* ✅ hover rood zoals je menu */
  text-decoration: underline;
}

.sublist {
  margin-top: 0.3em;
  margin-left: 1.5em;
  list-style: none;
  padding-left: 0;
}

.sublist li {
  margin: 0.15em 0;
  font-size: 0.95em;
}


/* Chip (photo count) */
.chapter-list .chip {
  grid-column: 3;
  justify-self: end;
  margin-right: 1.1em;   /* ✅ zelfde maat als link-inspringing */  
  font-size: 0.75em;
  color: #335a7a;
  background-color: #eef4fa;
  border: 1px solid #d5e3f0;
  border-radius: 999px;
  padding: 0.1em 0.55em;
  white-space: nowrap;
}

/* Make sure the thumbs button is visible */
.fancybox-button--thumbs {
  display: inline-flex !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Fancybox: keep arrows/buttons visible even when idle */
.fancybox-is-idle .fancybox-button,
.fancybox-is-idle .fancybox-navigation .fancybox-button {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* Lead paragraph (page introduction) */
article.content p.lead,
article .lead {
  font-size: 0.95em;
  line-height: 1.5;
  color: #445;
  background-color: #f4f6f8;
  padding: 0.8em 1em;
  margin: 0 0 1.2em 0;
  border-left: 4px solid rgb(34, 92, 146);
}

/* === Phone portrait: reduce gap between header and card === */
@media screen and (orientation: portrait) and (max-width: 480px) {
  div.nav-aa {
    margin: -40px auto 0 auto !important;
  }
}

/* === Responsive header title (fixes mobile gap caused by oversized H1) === */
header h1 {
  margin: 0;
  padding: 0;
  line-height: 1.05;
  font-size: clamp(1.6rem, 6vw, 3.2rem); /* scales down on phones */
}

header h1 a {
  font-size: inherit; /* don't fight the h1 scaling */
  display: inline-block;
  max-width: 92%;
  white-space: normal;        /* allow wrapping */
  overflow-wrap: anywhere;    /* prevent overflow on small screens */
}

/* Tagline also scales a bit */
header .tagline {
  font-size: clamp(0.95rem, 3.2vw, 1.1rem);
  margin: 0.6em 0 0 0;
}
/* === Phone portrait: put hamburger on top-left of header photo === */
@media screen and (orientation: portrait) and (max-width: 600px) {

  /* Hamburger button */
  .site-nav p.menuknop {
    position: fixed;
    top: 12px;
    left: 12px;
    z-index: 9999;

    margin: 0;
    padding: 0;

    background: transparent;   /* remove the big blue bar */
    text-align: left;
  }

  .site-nav p.menuknop a {
    display: inline-block;
    padding: 10px 12px;
    border-radius: 10px;

    background-color: rgba(34, 92, 146, 0.85); /* same blue, but as a button */
    line-height: 1;
  }

  /* Dropdown menu panel */
  .site-nav > ul {
    position: fixed;
    top: 56px;       /* just below the button */
    left: 12px;
    right: 12px;
    z-index: 9998;

    border-radius: 10px;
    overflow: hidden;
  }
}
/* === Phone portrait: hamburger inside header image (top-right) === */
@media screen and (orientation: portrait) and (max-width: 600px) {

  header { position: relative; }

  /* the moved hamburger container */
  header p.menuknop {
    position: absolute;
    top: 10px;
    right: 10px;
    margin: 0;
    background: transparent;
    z-index: 10;
  }

  header p.menuknop a {
    display: inline-block;
    padding: 6px 8px;
    border-radius: 8px;
    background-color: rgba(34, 92, 146, 0.85);
    font-size: 20px;   /* smaller */
    line-height: 1;
    text-decoration: none;
  }

  /* keep dropdown list in the card, not in header */
  .site-nav > ul {
    border-radius: 10px;
    overflow: hidden;
  }
}
/* === Mobile: submenu should expand inline, not be clipped === */
@media screen and (max-width: 600px) {

  /* Allow submenu to extend */
  .site-nav > ul {
    overflow: visible !important;
  }

  /* Submenu list: inline (no absolute positioning) */
  .site-nav ul li.submenu > ul {
    position: static !important;
    width: auto !important;
    left: auto !important;
    top: auto !important;
    max-height: none !important;
    overflow: visible !important;

    display: none;                 /* closed by default */
    background-color: #5583ad;     /* same as hover color */
  }

  /* Open state (set by JS) */
  .site-nav ul li.submenu.open > ul {
    display: block;
  }

  /* Optional: small indent so it reads as submenu */
  .site-nav ul li.submenu > ul > li {
    padding-left: 1.2em;
  }
}
/* === Mobile polish for inline submenus === */
@media screen and (max-width: 600px) {

  /* Make submenu header look like a toggle row */
  .site-nav ul li.submenu > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  /* Arrow indicator (closed/open) */
  .site-nav ul li.submenu > a::after {
    content: "▸";
    opacity: 0.9;
    margin-left: 0.6em;
  }
  .site-nav ul li.submenu.open > a::after {
    content: "▾";
  }

  /* Submenu panel styling */
  .site-nav ul li.submenu > ul {
    margin: 0;
    padding: 0.25em 0;
    background-color: rgba(255, 255, 255, 0.08); /* subtle overlay on blue */
    border-top: 1px solid rgba(255, 255, 255, 0.25);
  }

  /* Submenu items: indented + tighter */
  .site-nav ul li.submenu > ul > li {
    padding: 0.5em 0.6em 0.5em 1.4em;
    border-top: 1px solid rgba(0, 0, 0, 0.15);
  }

  .site-nav ul li.submenu > ul > li:first-child {
    border-top: none;
  }

  /* Submenu links: slightly softer */
  .site-nav ul li.submenu > ul a {
    opacity: 0.95;
  }
}
/* === Mobile submenu styling (strong override) === */
@media screen and (orientation: portrait) and (max-width: 900px) {

  /* Make submenu header a clear toggle row */
  .site-nav ul li.submenu > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  /* Override your existing :after rule */
  .site-nav ul li.submenu > a::after {
    content: "▸" !important;
    margin-left: 0.6em !important;
    opacity: 0.95 !important;
  }
  .site-nav ul li.submenu.open > a::after {
    content: "▾" !important;
  }

  /* Submenu panel: make it visibly separate */
  .site-nav ul li.submenu > ul {
    display: none;
    margin: 0 !important;
    padding: 0.35em 0 !important;
    background-color: rgba(0, 0, 0, 0.12) !important; /* clearer than subtle white */
    border-top: 1px solid rgba(255,255,255,0.25) !important;
  }
  .site-nav ul li.submenu.open > ul {
    display: block !important;
  }

  /* Submenu items: indentation + tighter */
  .site-nav ul li.submenu > ul > li {
    padding: 0.45em 0.6em 0.45em 1.6em !important;
    border-top: 1px solid rgba(255,255,255,0.18) !important;
  }
  .site-nav ul li.submenu > ul > li:first-child {
    border-top: none !important;
  }
}
/* === Mobile: clean inline submenus === */
@media screen and (orientation: portrait) and (max-width: 900px) {

  /* main menu list must be able to grow */
  .site-nav ul#hoofdmenu {
    overflow: visible !important;
  }

  /* submenu lists: inline blocks under their parent */
  .site-nav li.submenu > ul {
    position: static !important;
    width: auto !important;
    left: auto !important;
    top: auto !important;

    display: none;
    margin: 0 !important;
    padding: 0.25em 0 !important;

    background-color: rgba(0, 0, 0, 0.12) !important;
    border-top: 1px solid rgba(255,255,255,0.25) !important;
  }

  .site-nav li.submenu.open > ul {
    display: block !important;
  }

  /* submenu items: indent + tighter spacing */
  .site-nav li.submenu > ul > li {
    padding: 0.45em 0.6em 0.45em 1.6em !important;
    border-top: 1px solid rgba(255,255,255,0.18) !important;
  }
  .site-nav li.submenu > ul > li:first-child {
    border-top: none !important;
  }

  /* arrow indicator on submenu header */
  .site-nav li.submenu > a {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
  }
  .site-nav li.submenu > a::after {
    content: "▸" !important;
    margin-left: 0.6em !important;
    opacity: 0.95 !important;
  }
  .site-nav li.submenu.open > a::after {
    content: "▾" !important;
  }
}

/* === Phone portrait: floating hamburger top-right === */
@media screen and (orientation: portrait) and (max-width: 900px) {

  /* Make header the reference, but button floats with viewport */
  header p.menuknop {
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 9999;

    margin: 0 !important;
    background: transparent !important;
    padding: 0 !important;
  }

  header p.menuknop a {
    display: inline-block;
    padding: 6px 8px;
    border-radius: 8px;
    background-color: rgba(34, 92, 146, 0.85);
    font-size: 20px;
    line-height: 1;
  }
}
/* Fix “tussenbreedte” (500–699px): card niet te ver omhoog */
@media screen and (min-width: 500px) and (max-width: 699px) {
  div.nav-aa {
    margin: -85px auto 0 auto; /* was -125px */
  }
}
/* Force same typography for breadcrumb + updated */
.breadcrumb-bar,
.breadcrumb-bar .breadcrumb,
.breadcrumb-bar .breadcrumb-updated {
  font-size: 0.85em;
  line-height: 1.2;
}
/* Fix em-on-em: breadcrumb inside bar must NOT shrink twice */
.breadcrumb-bar .breadcrumb {
  font-size: 1em;
}



/* DEBUG: handig show viewport width
body::after {
  content: "viewport: " attr(data-vw);
  position: fixed;
  bottom: 5px;
  right: 8px;
  font-size: 11px;
  background: rgba(0,0,0,0.7);
  color: #fff;
  padding: 2px 6px;
  border-radius: 4px;
  z-index: 99999;
} */

/* Text omloop en Positioning options */

figure.image-fancybox {
  margin: 0.4em 1.2em 0.8em 0;
  font-size: 0.85em;
}

figure.image-fancybox img {
  display: block;
  width: 100%;
  height: auto;
}

figure.image-fancybox figcaption {
  margin-top: 0.4em;
  color: #666;
  line-height: 1.3;
}

/* Positioning options */

figure.image-fancybox.left {
  float: left;
}

figure.image-fancybox.right {
  float: right;
  margin: 0.4em 0 0.8em 1.2em;
}

figure.image-fancybox.center {
  float: none;
  margin: 1em auto;
  text-align: center;
}
/* Force pager to the right in any parent layout (block, flex, grid) */
follow.pager{
  align-self: flex-end;
  margin-left: auto;
  float: right;
  clear: both;
  width: auto;
}

/* Two-column content layout (sidebar + main text) */
.content-with-sidebar{
  display: flex;
  align-items: flex-start;
  gap: 1.6em;
}

/* Important if old floats sneak in */
.content-with-sidebar .image-column,
.content-with-sidebar .main-text{
  float: none !important;
  clear: none !important;
}

/* Sidebar column (images or chapter links) */
.content-with-sidebar .image-column{
  flex: 0 0 250px;      /* jouw nieuwe sidebarbreedte */
  text-align: center;   /* content gecentreerd (links + captions + etc.) */
}

/* Images in sidebar */
.content-with-sidebar .image-column img{
  display: block;
  width: 100%;
  max-width: 140px;     /* jouw gewenste max beeldbreedte */
  height: auto;
  margin: 0 auto 0.9em; /* auto = centreren + iets ruimere marge */
}

/* Link styling in sidebar */
.content-with-sidebar .image-column a{
  color: #666;          /* middelgrijs */
  font-size: 0.92em;    /* iets kleiner dan body */
  text-decoration: none;
}

.content-with-sidebar .image-column a:hover{
  color: #b00000;       /* rood bij hover */
  text-decoration: underline;
}

/* If you have a list of chapter links, make them stack neatly */
.content-with-sidebar .image-column .chapter-links a{
  display: block;
  margin: 0.35em 0;
  line-height: 1.35;
}

/* Main text */
.content-with-sidebar .main-text{
  flex: 1 1 auto;
  min-width: 0;
}

/* Mobile: stack sidebar above content */
@media (max-width: 800px){
  .content-with-sidebar{
    flex-direction: column;
  }
  .content-with-sidebar .image-column{
    flex: 0 0 auto;
    width: 100%;
  }
  .content-with-sidebar .image-column img{
    max-width: 140px;
  }
  .content-with-sidebar .image-column .chapter-links a{
    display: inline-block;
    margin: 0.25em 0.6em;
  }
}
/* marge aan bovenzijde sidebar, 3.0 is gelijk aan tekst rechts */
.content-with-sidebar .chapter-sidebar {
  padding-top: 0.4em;
}

/* Arrow bullets for sidebar links */
.content-with-sidebar .chapter-links a{
  position: relative;
  padding-left: 1em;
}

.content-with-sidebar .chapter-links a::before{
  content: "›";
  position: absolute;
  left: 0;
  top: 0.1em;
  color: rgb(29, 80, 128);
  font-size: 1.1em;
  line-height: 1;
}

.content-with-sidebar .chapter-links a.active::before{
  color: #b00000; /* zelfde rood als actieve link */
}

/* Active sidebar link */
.content-with-sidebar .chapter-links a.active,
.content-with-sidebar .chapter-links a[aria-current="page"]{
  color: #b00000;          /* vast rood */
  font-weight: normal;     /* geen extra nadruk */
  cursor: default;
  pointer-events: none;   /* NIET aanklikbaar */
  text-decoration: none;
}

/* Active arrow color */
.content-with-sidebar .chapter-links a.active::before,
.content-with-sidebar .chapter-links a[aria-current="page"]::before{
  color: #b00000;
}



/* =========================
   Lightweight image lightbox (window style)
   ========================= */

.img-zoom {
  border: 0;
  padding: 0;
  background: transparent;
  cursor: zoom-in;
  display: inline-block;
}

.img-zoom img {
  display: block;
}

/* The dialog becomes a clean "window" */
.lightbox {
  border: 1px solid rgba(0,0,0,0.18);
  border-radius: 10px;
  padding: 10px;
  background: rgba(255,255,255,0.96);
  box-shadow: 0 18px 60px rgba(0,0,0,0.35);

  max-width: min(92vw, 1200px);
}

/* Make the page remain visible (no black overlay) */
.lightbox::backdrop {
  background: rgba(255,255,255,0.35); /* subtle, not theatre-black */
  backdrop-filter: blur(1px);
}

.lightbox-img {
  display: block;
  width: 100%;
  height: auto;
  background: transparent;
  border-radius: 6px;
}

/* Close button: small and unobtrusive */
.lightbox-close {
  position: absolute;
  top: 6px;
  right: 8px;

  border: 1px solid rgba(0,0,0,0.18);
  background: rgba(255,255,255,0.9);
  color: #222;

  font-size: 20px;
  line-height: 1;
  padding: 2px 8px;
  border-radius: 8px;
  cursor: pointer;
}

.lightbox-close:hover {
  background: #fff;
}

/* Make figure captions behave like normal Fram.nl links on hover */
.image-block a.figure-link {
  text-decoration: none;
}

.image-block a.figure-link figcaption {
  color: inherit;                 /* basis: normale tekstkleur */
  text-decoration: none;
  transition: color 0.2s ease;
}

.image-block a.figure-link:hover figcaption {
  color: var(--link-hover, #b30000); /* zelfde rood als andere links */
}


/* tweede sidebar in zelfde hoofdstuk
.chapter-sidebar .sidebar-extra {
  margin-top: 1.4em;
  padding-top: 1em;
  border-top: 1px solid #e2e2e2;
  font-size: 0.9em;
  color: #666;
}
*/



<style>
.ingesprongen-cursief {
  font-style: italic; /* Cursieve stijl */
  padding-left: 20px; /* Inspringen vanaf links */
  padding-right: 20px; /* Inspringen vanaf rechts */
   /* border: 1px solid #ccc;Optioneel: om het effect te zien */
}
</style>

