:root{--ink:#1f2933;--muted:#667085;--line:#e4ded3;--paper:#fbf7ef;--card:#fffdf8;--brand:#2f6677;--brand-dark:#194756;--accent:#b9833c;--shadow:0 18px 50px rgba(31,41,51,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.6}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px clamp(18px,4vw,56px);background:rgba(251,247,239,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:12px;color:var(--brand-dark);font-weight:700;text-decoration:none}.brand img{max-height:46px}.brand span{font-size:1.05rem}.main-nav{display:flex;gap:20px}.main-nav a{color:var(--ink);font-weight:600;text-decoration:none}.main-nav a:hover{color:var(--brand)}.hero{position:relative;min-height:560px;display:grid;place-items:center;padding:80px 18px;background:linear-gradient(120deg,rgba(25,71,86,.9),rgba(47,102,119,.72)),url('../../images/breadcrumbs-01.jpg') center/cover}.hero__content{width:min(1100px,100%);color:#fff}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700;color:#f4d19b}.hero h1{max-width:850px;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(2.3rem,6vw,5rem);line-height:1.02}.lead{max-width:760px;font-size:1.18rem;color:#edf7f9}.search-panel{margin-top:32px;padding:22px;background:rgba(255,253,248,.97);color:var(--ink);border-radius:24px;box-shadow:var(--shadow)}.search-panel label{display:block;font-weight:700}.search-row{display:grid;grid-template-columns:1fr auto;gap:12px;margin-top:8px}.search-row input,.filters input,.filters select{width:100%;border:1px solid #d8d0c3;border-radius:14px;padding:14px 15px;font:inherit;background:#fff}.search-row button{border:0;border-radius:14px;padding:0 26px;background:var(--brand);color:#fff;font-weight:800;cursor:pointer}.search-row button:hover{background:var(--brand-dark)}.filters{display:grid;grid-template-columns:180px 220px 1fr;gap:12px;margin-top:14px}.filters span{display:block;margin-bottom:5px;color:var(--muted);font-size:.82rem}.hint{margin:12px 0 0;color:var(--muted);font-size:.93rem}.results-wrap{width:min(1200px,100%);margin:0 auto;padding:42px 18px}.status{margin-bottom:18px;padding:14px 18px;border:1px solid var(--line);border-radius:16px;background:#fff}.status.is-loading:after{content:' ';display:inline-block;width:1em}.results{display:grid;gap:18px}.result-card{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:0 10px 30px rgba(31,41,51,.06);overflow:hidden}.result-card__head{display:flex;justify-content:space-between;gap:18px;padding:22px}.result-card h2{margin:0;font-family:Fraunces,Georgia,serif;color:var(--brand-dark);font-size:1.55rem}.current-note{margin:.35rem 0 0;color:var(--muted)}.toggle{align-self:start;border:1px solid var(--brand);background:#fff;color:var(--brand);border-radius:999px;padding:9px 16px;font-weight:800;cursor:pointer}.timeline-mini{display:flex;flex-wrap:wrap;gap:8px;padding:0 22px 22px}.timeline-mini span{background:#eef6f8;color:var(--brand-dark);border-radius:999px;padding:4px 9px;font-size:.82rem;font-weight:700}.result-details{border-top:1px solid var(--line);padding:0 22px 22px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:900px}th,td{padding:12px;border-bottom:1px solid #eee4d6;text-align:left;vertical-align:top}th{color:var(--brand-dark);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.info-grid{width:min(1200px,100%);margin:10px auto 70px;padding:0 18px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-grid article{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px}.info-grid h2{font-family:Fraunces,Georgia,serif;color:var(--brand-dark);margin-top:0}.site-footer{padding:28px 18px;text-align:center;border-top:1px solid var(--line);color:var(--muted)}code{background:#f1eadf;padding:.1em .35em;border-radius:.35em}@media(max-width:800px){.site-header{align-items:flex-start;flex-direction:column}.main-nav{flex-wrap:wrap}.hero{padding:48px 14px}.search-row,.filters,.info-grid{grid-template-columns:1fr}.result-card__head{flex-direction:column}table{font-size:.92rem}}
.subhero{padding:82px 18px 58px;background:linear-gradient(120deg,rgba(25,71,86,.94),rgba(47,102,119,.75)),url('../../images/breadcrumbs-01.jpg') center/cover;color:#fff}.subhero>div{width:min(1100px,100%);margin:0 auto}.subhero h1{margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(2.2rem,5vw,4.4rem);line-height:1.04}.search-panel--flat{margin:0 0 24px}.filters--photos{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){.filters--photos{grid-template-columns:1fr}}.address-photos{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:0 22px 22px}.address-photos a:not(.photo-more){display:block;width:82px;height:62px;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#eee}.address-photos img{width:100%;height:100%;object-fit:cover;display:block}.photo-more{margin-left:4px;color:var(--brand);font-weight:800;text-decoration:none}.photo-more:hover{text-decoration:underline}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}.photo-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(31,41,51,.06)}.photo-card>a{display:block;aspect-ratio:4/3;background:#eee}.photo-card img{width:100%;height:100%;object-fit:cover;display:block}.photo-card__body{padding:16px}.photo-card h2{font-family:Fraunces,Georgia,serif;font-size:1.22rem;line-height:1.15;color:var(--brand-dark);margin:0 0 6px}.photo-card p{margin:0 0 8px;color:var(--muted);font-weight:700}.photo-card small{display:block;color:var(--muted);line-height:1.45}@media(max-width:800px){.filters--photos{grid-template-columns:1fr}.address-photos a:not(.photo-more){width:74px;height:56px}}
.has-gallery-modal{overflow:hidden}.gallery-modal[hidden]{display:none}.gallery-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:22px}.gallery-modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.82);backdrop-filter:blur(5px)}.gallery-modal__dialog{position:relative;width:min(1120px,100%);max-height:92vh;background:#111827;border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.45);overflow:hidden}.gallery-modal figure{margin:0;display:grid;grid-template-rows:minmax(260px,78vh) auto}.gallery-modal__image{width:100%;height:100%;object-fit:contain;background:#0b1120}.gallery-modal figcaption{display:flex;justify-content:space-between;gap:18px;padding:14px 18px;color:#f8fafc;background:#111827}.gallery-modal__caption{font-weight:700}.gallery-modal__counter{white-space:nowrap;color:#cbd5e1}.gallery-modal__close,.gallery-modal__nav{position:absolute;border:0;cursor:pointer;color:#fff;background:rgba(15,23,42,.68);box-shadow:0 8px 22px rgba(0,0,0,.25)}.gallery-modal__close{top:14px;right:14px;width:42px;height:42px;border-radius:999px;font-size:30px;line-height:1}.gallery-modal__nav{top:50%;transform:translateY(-50%);width:50px;height:64px;border-radius:16px;font-size:46px;line-height:1}.gallery-modal__nav--prev{left:14px}.gallery-modal__nav--next{right:14px}.gallery-modal--single .gallery-modal__nav{display:none}@media(max-width:700px){.gallery-modal{padding:10px}.gallery-modal__dialog{border-radius:16px}.gallery-modal figure{grid-template-rows:minmax(220px,72vh) auto}.gallery-modal figcaption{display:block}.gallery-modal__counter{display:block;margin-top:4px}.gallery-modal__nav{width:42px;height:56px;font-size:38px}}

.address-map {
  margin-top: 1.25rem;
  border: 1px solid rgba(44, 62, 80, .14);
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
}

.address-map__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.1rem;
  border-bottom: 1px solid rgba(44, 62, 80, .1);
}

.address-map__head h3 {
  margin: 0 0 .2rem;
  font-size: 1.05rem;
}

.address-map__head p {
  margin: 0;
  color: #667085;
}

.address-map__head a {
  white-space: nowrap;
  font-weight: 700;
}

.address-map iframe {
  display: block;
  width: 100%;
  height: 340px;
  border: 0;
}

@media (max-width: 700px) {
  .address-map__head {
    display: block;
  }
  .address-map__head a {
    display: inline-block;
    margin-top: .7rem;
  }
  .address-map iframe {
    height: 280px;
  }
}
.map-placeholder{margin-top:1.25rem;padding:1rem 1.1rem;border:1px dashed rgba(44,62,80,.18);border-radius:18px;background:#fff;color:#667085}.map-placeholder p{margin:0}.address-map--empty{padding:1rem 1.1rem}.address-map--empty p{margin:0;color:#667085}

.between-address-row td {
    background: #f8f1df;
    color: #6f5420;
    font-style: italic;
}

.current-address-row td {
    background: #edf7f4;
}

.visual-timeline{margin:1.25rem 0 1.5rem;padding:1.1rem;border:1px solid var(--line);border-radius:18px;background:#fffaf1}.visual-timeline h3{margin:0 0 1rem;font-family:Fraunces,Georgia,serif;color:var(--brand-dark)}.visual-timeline ol{list-style:none;margin:0;padding:0;position:relative}.visual-timeline li{display:grid;grid-template-columns:88px 1fr;gap:16px;position:relative;padding:0 0 1rem}.visual-timeline li:before{content:"";position:absolute;left:77px;top:11px;width:10px;height:10px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px #e6f4f7}.visual-timeline li:after{content:"";position:absolute;left:81px;top:24px;bottom:-2px;border-left:2px solid #d8e9ed}.visual-timeline li:last-child:after{display:none}.vt-year{font-weight:800;color:var(--brand-dark)}.vt-content{display:grid;gap:.18rem}.vt-content strong{color:var(--ink)}.vt-content small{color:var(--muted)}.vt-between:before{background:var(--accent)!important;box-shadow:0 0 0 4px #f8e6c8!important}.vt-current:before{background:#18845f!important;box-shadow:0 0 0 4px #dff5ec!important}.change-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:.35rem}.change-badges em,.pill{display:inline-block;border-radius:999px;background:#eef6f8;color:var(--brand-dark);padding:.22rem .55rem;font-size:.78rem;font-style:normal;font-weight:800}.pill{margin:.15rem .25rem .15rem 0}.vt-address-line{display:flex;flex-wrap:wrap;gap:.45rem .65rem;align-items:baseline}.vt-details{display:grid;gap:.45rem;margin-top:.55rem}.vt-field{display:grid;grid-template-columns:105px minmax(0,1fr);gap:.65rem;align-items:start;padding:.55rem .7rem;border:1px solid #e7edf0;border-radius:12px;background:#fff}.vt-field--note{background:#fff7e8;border-color:#f1dfbb}.vt-label{font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.035em;color:var(--brand-dark)}.vt-value{min-width:0;color:var(--ink);line-height:1.45}.vt-people-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}.vt-people-list li{display:inline-flex;padding:0;margin:0}.visual-timeline .vt-people-list li:before,.visual-timeline .vt-people-list li:after{display:none}.vt-people-list .person-link{display:inline-block;border-radius:8px;background:#f6f9fa;padding:.12rem .45rem;line-height:1.35;font-size:.92rem;font-weight:600;color:#315b67}.vt-field--note .vt-value{white-space:normal;font-size:.92rem}.person-link{color:var(--brand);font-weight:600;text-decoration:none}.person-link:hover{text-decoration:underline}.vt-value{font-size:.94rem}.vt-label{font-size:.72rem}.change-badges em,.pill{font-weight:700;font-size:.74rem;padding:.18rem .48rem}.vt-field{padding:.48rem .62rem}.vt-details{gap:.38rem;margin-top:.45rem}.link-button{display:inline-block;text-decoration:none}.person-history{padding:0 22px 22px}.compare-filters{grid-template-columns:180px 180px 1fr}.search-row--right{margin-top:14px}.muted{color:var(--muted)}.big-map{height:680px;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);overflow:hidden;background:#e8efe7}.feature-grid{width:min(1200px,100%);margin:0 auto 70px;padding:0 18px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.feature-grid a{display:block;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 10px 30px rgba(31,41,51,.05)}.feature-grid strong{display:block;color:var(--brand-dark);font-family:Fraunces,Georgia,serif;font-size:1.2rem}.feature-grid span{display:block;margin-top:4px;color:var(--muted)}@media(max-width:900px){.vt-field{grid-template-columns:1fr;gap:.25rem}.compare-filters,.feature-grid{grid-template-columns:1fr}.big-map{height:520px}.visual-timeline li{grid-template-columns:68px 1fr}.visual-timeline li:before{left:57px}.visual-timeline li:after{left:61px}}

.knowledge-link{color:var(--brand);font-weight:800;text-decoration:none;border-bottom:1px dotted currentColor}.knowledge-link:hover{color:var(--brand-dark);border-bottom-style:solid}.has-knowledge-modal{overflow:hidden}.knowledge-modal[hidden]{display:none}.knowledge-modal{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:22px}.knowledge-modal__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.72);backdrop-filter:blur(5px)}.knowledge-modal__dialog{position:relative;width:min(820px,100%);max-height:88vh;overflow:auto;background:var(--card);border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.38);border:1px solid var(--line)}.knowledge-modal__close{position:sticky;top:12px;float:right;margin:12px 12px 0 0;z-index:2;border:0;width:42px;height:42px;border-radius:999px;background:var(--brand-dark);color:#fff;font-size:30px;line-height:1;cursor:pointer}.knowledge-modal__content{padding:30px}.knowledge-modal-content header h2{margin:.1rem 0 1rem;font-family:Fraunces,Georgia,serif;color:var(--brand-dark);font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.08}.knowledge-type{color:var(--accent)!important;margin:0}.knowledge-body{font-size:1rem}.knowledge-body p:first-child{margin-top:0}.knowledge-body a{color:var(--brand);font-weight:800}.knowledge-image{margin:0 0 1.25rem;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:#f1eadf}.knowledge-image img{display:block;width:100%;height:auto}.knowledge-image--page{max-width:760px}.knowledge-modal-content footer{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line)}.knowledge-modal-content footer a{font-weight:800;color:var(--brand)}.knowledge-loading,.knowledge-error{padding:2rem;text-align:center;color:var(--muted);font-weight:700}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.knowledge-page .result-details{padding:28px}@media(max-width:700px){.knowledge-modal{padding:10px}.knowledge-modal__dialog{border-radius:16px}.knowledge-modal__content{padding:22px 18px}.knowledge-modal__close{width:38px;height:38px;font-size:27px}}

.address-badges{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin:.65rem 0 .15rem}.address-badge{display:inline-flex;align-items:center;gap:.38rem;border:1px solid var(--line);border-radius:999px;background:#fff;padding:.25rem .55rem;font-size:.82rem;font-weight:800;color:var(--brand-dark)}.address-badge img{width:22px;height:22px;object-fit:contain;display:block}.address-badge--stars{border-color:#ead098;background:#fff8df;color:#8b6518;letter-spacing:.05em}.result-details>.address-badges{margin:0 0 1rem}.legend-line{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.legend-line span{display:inline-flex;align-items:center;gap:.35rem}.legend-line img{width:22px;height:22px;object-fit:contain}.filters--monuments{grid-template-columns:320px}.monument-marker{background:transparent;border:0}.monument-marker span{display:flex;align-items:center;gap:2px;padding:4px;border-radius:999px;background:#fff;box-shadow:0 5px 16px rgba(15,23,42,.28);border:1px solid rgba(15,23,42,.12)}.monument-marker img{width:26px;height:26px;object-fit:contain;display:block}@media(max-width:800px){.filters--monuments{grid-template-columns:1fr}.address-badge span{display:inline}.legend-line{display:block}.legend-line span{margin-right:.75rem}}

/* Logo-integratie */
.site-header{
    min-height:78px;
    background:linear-gradient(90deg,rgba(251,247,239,.98),rgba(245,241,232,.96));
}
.brand--logo{
    gap:14px;
    min-width:min(430px,100%);
}
.brand__mark{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:6px 10px;
    border-radius:18px;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(228,222,211,.9);
    box-shadow:0 10px 28px rgba(31,41,51,.08);
}
.brand__mark img{
    display:block;
    width:min(300px,48vw);
    max-height:76px;
    height:auto;
}
.brand__subtitle{
    display:block;
    max-width:185px;
    color:var(--muted);
    font-size:.78rem;
    font-weight:700;
    line-height:1.25;
}
.hero-logo{
    display:inline-flex;
    align-items:center;
    gap:18px;
    max-width:min(760px,100%);
    margin:0 0 24px;
    padding:12px 18px;
    border-radius:24px;
    background:rgba(255,253,248,.94);
    border:1px solid rgba(255,255,255,.65);
    box-shadow:0 22px 60px rgba(0,0,0,.18);
    color:var(--brand-dark);
}
.hero-logo img{
    display:block;
    width:min(330px,52vw);
    height:auto;
}
.hero-logo span{
    max-width:260px;
    font-weight:800;
    line-height:1.25;
    color:#5b6571;
}
@media(max-width:980px){
    .site-header{position:relative;align-items:stretch;gap:14px;}
    .brand--logo{min-width:0;}
    .brand__subtitle{max-width:none;}
    .main-nav{gap:12px;}
}
@media(max-width:700px){
    .brand--logo{align-items:flex-start;}
    .brand__mark{width:100%;justify-content:flex-start;}
    .brand__mark img{width:min(292px,86vw);}
    .brand__subtitle{font-size:.76rem;padding-left:4px;}
    .hero-logo{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:12px 14px;}
    .hero-logo img{width:min(300px,82vw);}
    .hero-logo span{max-width:none;font-size:.92rem;}
}

/* Hanneke AI-chat */
.page-hero{padding:72px 18px;background:linear-gradient(120deg,rgba(25,71,86,.92),rgba(47,102,119,.76)),url('../../images/breadcrumbs-01.jpg') center/cover;color:#fff}.page-hero__content{width:min(1200px,100%);margin:0 auto}.page-hero h1{margin:.1rem 0;font-family:Fraunces,Georgia,serif;font-size:clamp(2.2rem,5vw,4.4rem);line-height:1.05}.page-hero--hanneke{background:linear-gradient(120deg,rgba(25,71,86,.94),rgba(185,131,60,.62)),url('../../images/breadcrumbs-01.jpg') center/cover}.chat-page{width:min(1200px,100%);margin:0 auto;padding:42px 18px 80px}.chat-layout{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:22px;align-items:start}.chat-intro,.chat-card{background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.chat-intro{padding:24px}.chat-intro h2{margin:0 0 .75rem;font-family:Fraunces,Georgia,serif;color:var(--brand-dark)}.prompt-chips{display:flex;flex-wrap:wrap;gap:8px;margin:1.2rem 0}.prompt-chips button{border:1px solid #d8d0c3;border-radius:999px;background:#fff;padding:.55rem .8rem;font:inherit;font-weight:800;color:var(--brand-dark);cursor:pointer}.prompt-chips button:hover{border-color:var(--brand);color:var(--brand)}.chat-note{font-size:.92rem;color:var(--muted);margin-bottom:0}.chat-card{overflow:hidden}.chat-messages{height:min(640px,70vh);min-height:430px;overflow:auto;padding:22px;display:flex;flex-direction:column;gap:16px;background:linear-gradient(180deg,#fffdf8,#fbf7ef)}.chat-message{display:flex;gap:12px;align-items:flex-start}.chat-message--user{flex-direction:row-reverse}.chat-avatar{flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:#fff;font-weight:900}.chat-message--user .chat-avatar{background:var(--accent)}.chat-bubble{max-width:min(720px,88%);padding:14px 16px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(31,41,51,.06)}.chat-message--user .chat-bubble{background:#eef6f8}.chat-bubble strong{display:block;margin-bottom:.25rem;color:var(--brand-dark)}.chat-bubble p{margin:0}.chat-form{border-top:1px solid var(--line);padding:16px;background:#fff}.chat-form textarea{width:100%;resize:vertical;min-height:78px;max-height:220px;border:1px solid #d8d0c3;border-radius:16px;padding:14px 15px;font:inherit;background:#fff}.chat-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.chat-actions button{border:0;border-radius:14px;padding:13px 20px;background:var(--brand);color:#fff;font-weight:900;cursor:pointer}.chat-actions button:hover{background:var(--brand-dark)}.chat-status{color:var(--muted);font-size:.92rem}.chat-status.is-loading:after{content:'…'}@media(max-width:900px){.vt-field{grid-template-columns:1fr;gap:.25rem}.chat-layout{grid-template-columns:1fr}.chat-messages{height:auto;max-height:none;min-height:360px}.chat-actions{align-items:stretch;flex-direction:column}.chat-actions button{width:100%}}


/* Hanneke: sluit aan op de standaard subhero/results-wrap-opmaak */
.chat-page{padding-top:42px;padding-bottom:80px;}
.chat-layout{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:22px;align-items:start;}
.chat-intro,.chat-card{background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);}
.chat-intro{padding:24px;}
.chat-intro h2{margin:0 0 .75rem;font-family:Fraunces,Georgia,serif;color:var(--brand-dark);}
.prompt-chips{display:flex;flex-wrap:wrap;gap:8px;margin:1.2rem 0;}
.prompt-chips button{border:1px solid #d8d0c3;border-radius:999px;background:#fff;padding:.55rem .8rem;font:inherit;font-weight:800;color:var(--brand-dark);cursor:pointer;}
.prompt-chips button:hover{border-color:var(--brand);color:var(--brand);}
.chat-note{font-size:.92rem;color:var(--muted);margin-bottom:0;}
.chat-card{overflow:hidden;}
.chat-messages{height:min(640px,70vh);min-height:430px;overflow:auto;padding:22px;display:flex;flex-direction:column;gap:16px;background:linear-gradient(180deg,#fffdf8,#fbf7ef);}
.chat-message{display:flex;gap:12px;align-items:flex-start;}
.chat-message--user{flex-direction:row-reverse;}
.chat-avatar{flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:#fff;font-weight:900;}
.chat-message--user .chat-avatar{background:var(--accent);}
.chat-bubble{max-width:min(720px,88%);padding:14px 16px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px rgba(31,41,51,.06);}
.chat-message--user .chat-bubble{background:#eef6f8;}
.chat-bubble strong{display:block;margin-bottom:.25rem;color:var(--brand-dark);}
.chat-bubble p{margin:0;}
.chat-form{border-top:1px solid var(--line);padding:16px;background:#fff;}
.chat-form textarea{width:100%;resize:vertical;min-height:78px;max-height:220px;border:1px solid #d8d0c3;border-radius:16px;padding:14px 15px;font:inherit;background:#fff;}
.chat-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;}
.chat-actions button{border:0;border-radius:14px;padding:13px 20px;background:var(--brand);color:#fff;font-weight:900;cursor:pointer;}
.chat-actions button:hover{background:var(--brand-dark);}
.chat-status{color:var(--muted);font-size:.92rem;}
.chat-status.is-loading:after{content:'…';}
@media(max-width:900px){.vt-field{grid-template-columns:1fr;gap:.25rem}.chat-layout{grid-template-columns:1fr}.chat-messages{height:auto;max-height:none;min-height:360px}.chat-actions{align-items:stretch;flex-direction:column}.chat-actions button{width:100%}}

/* Compactere zoekresultaten en adresdossiers */
.result-card--compact{overflow:visible}.result-compact{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:20px}.result-thumb{display:block;width:150px;aspect-ratio:4/3;border-radius:18px;overflow:hidden;background:#e9e1d5;border:1px solid var(--line);text-decoration:none}.result-thumb img{width:100%;height:100%;object-fit:cover;display:block}.result-thumb--empty{display:grid;place-items:center;color:var(--brand-dark);font-family:Fraunces,Georgia,serif;font-weight:800;font-size:2rem}.result-compact__top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.result-compact h2{margin:0}.result-compact h2 a{color:var(--brand-dark);text-decoration:none}.result-compact h2 a:hover{text-decoration:underline}.result-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin:12px 0;color:var(--muted);font-size:.94rem}.result-facts span{display:block}.result-facts strong{display:block;color:var(--ink);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.button-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--brand);border-radius:999px;padding:.62rem 1rem;background:#fff;color:var(--brand);font-weight:900;text-decoration:none}.button-link:hover{background:#eef6f8}.button-link--accent{border-color:var(--accent);color:#8a5a16}.button-link--ghost{border-color:#d8d0c3;color:var(--ink)}.result-card--compact .timeline-mini{padding:0;margin-top:10px}.result-card--compact .address-badges{justify-content:flex-end;margin-top:0}.subhero--address,.subhero--walk{background:linear-gradient(120deg,rgba(25,71,86,.94),rgba(185,131,60,.58)),url('../../images/breadcrumbs-01.jpg') center/cover}.address-page{width:min(1240px,100%);margin:0 auto;padding:42px 18px 80px;display:grid;grid-template-columns:310px 1fr;gap:22px;align-items:start}.address-facts,.wiki-card{background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.address-facts{position:sticky;top:100px;padding:24px}.address-facts h2,.wiki-card h2{margin-top:0;font-family:Fraunces,Georgia,serif;color:var(--brand-dark)}.address-facts dl{margin:0}.address-facts dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:900}.address-facts dd{margin:0 0 1rem;font-weight:700}.address-actions{display:grid;gap:10px;margin-top:1.25rem}.address-main{display:grid;gap:20px}.wiki-card{padding:24px}.address-summary-list{margin:.5rem 0 0;padding-left:1.3rem}.address-summary-list li{padding:.28rem 0}.person-cloud{display:flex;flex-wrap:wrap;gap:8px}.person-cloud a{display:inline-flex;padding:.45rem .7rem;border-radius:999px;background:#eef6f8;color:var(--brand-dark);font-weight:800;text-decoration:none}.person-cloud a:hover{text-decoration:underline}.photo-grid--address{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.photo-grid--address a{display:block;aspect-ratio:4/3;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#eee}.photo-grid--address img{width:100%;height:100%;object-fit:cover;display:block}.address-map iframe{width:100%;height:410px;border:0;border-radius:18px;background:#e8efe7}.address-map__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.address-map__head h2,.address-map__head h3{margin:0;font-family:Fraunces,Georgia,serif;color:var(--brand-dark)}.address-map__head p{margin:.2rem 0 0;color:var(--muted)}.address-map__head a{font-weight:900;color:var(--brand)}

/* Historische wandeling */
.walk-page{width:min(1280px,100%);margin:0 auto;padding:42px 18px 80px;display:grid;grid-template-columns:360px 1fr;gap:22px;align-items:start}.walk-intro{position:sticky;top:100px}.walk-map{height:720px;border-radius:20px;overflow:hidden;background:#e8efe7;border:1px solid var(--line)}.walk-list{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px;max-height:520px;overflow:auto}.walk-list button{width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:14px;padding:11px 12px;cursor:pointer;font:inherit}.walk-list button:hover{border-color:var(--brand);background:#eef6f8}.walk-list strong{display:block;color:var(--brand-dark)}.walk-list span{display:block;color:var(--muted);font-size:.9rem}.walk-marker{background:transparent;border:0}.walk-marker span{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:var(--brand);color:#fff;font-weight:900;box-shadow:0 8px 20px rgba(15,23,42,.28);border:2px solid #fff}.walk-marker--monument span{background:var(--accent)}.walk-marker--cafe span{background:#7a4b25}.walk-map-card{padding:12px}.walk-intro .status{margin:14px 0 0}
@media(max-width:900px){.vt-field{grid-template-columns:1fr;gap:.25rem}.result-compact,.address-page,.walk-page{grid-template-columns:1fr}.result-thumb{width:100%;max-height:220px}.result-facts{grid-template-columns:1fr}.result-compact__top{display:block}.result-card--compact .address-badges{justify-content:flex-start}.address-facts,.walk-intro{position:static}.walk-map{height:540px}.address-map__head{display:block}.address-map iframe{height:340px}}


/* Leaflet fallback + wandeling layout-fix
   Nodig wanneer de externe Leaflet-CSS niet of te laat geladen wordt. */
.leaflet-container{position:relative;overflow:hidden;width:100%;height:100%;outline:0;background:#e8efe7;}
.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0;}
.leaflet-tile{width:256px;height:256px;max-width:none!important;max-height:none!important;user-select:none;-webkit-user-drag:none;}
.leaflet-tile-container{transform-origin:0 0;}
.leaflet-marker-icon,.leaflet-marker-shadow{display:block;}
.leaflet-control-container .leaflet-top,.leaflet-control-container .leaflet-bottom{position:absolute;z-index:1000;pointer-events:none;}
.leaflet-control-container .leaflet-top{top:10px}.leaflet-control-container .leaflet-right{right:10px}.leaflet-control-container .leaflet-bottom{bottom:10px}.leaflet-control-container .leaflet-left{left:10px}
.leaflet-control{position:relative;z-index:1000;pointer-events:auto;float:left;clear:both;}
.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}
.leaflet-control-zoom a{display:block;width:30px;height:30px;line-height:30px;text-align:center;text-decoration:none;background:#fff;color:#1f2933;border-bottom:1px solid #d8d0c3;font-weight:800;}
.leaflet-control-zoom{border:1px solid #d8d0c3;border-radius:8px;overflow:hidden;box-shadow:0 4px 14px rgba(15,23,42,.18);}
.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px;}
.leaflet-popup-content-wrapper{background:#fff;border-radius:12px;box-shadow:0 8px 24px rgba(15,23,42,.25);padding:1px;text-align:left;}
.leaflet-popup-content{margin:12px 14px;line-height:1.4;min-width:140px;}
.leaflet-popup-tip-container{display:none;}
.walk-page{width:min(1180px,100%);grid-template-columns:320px minmax(0,1fr);gap:20px;}
.walk-map-card{min-width:0;overflow:hidden;}
.walk-map{width:100%;height:620px;min-height:620px;isolation:isolate;}
.walk-list{max-height:430px;}
.subhero--walk .lead{max-width:820px;}
@media(max-width:900px){.vt-field{grid-template-columns:1fr;gap:.25rem}.walk-page{grid-template-columns:1fr}.walk-map{height:520px;min-height:520px}.walk-list{max-height:none}}

.photo-card h2 a{color:inherit;text-decoration:none}.photo-card h2 a:hover{text-decoration:underline}.photo-card__address{display:inline-block;margin-top:10px;color:var(--brand);font-weight:800;text-decoration:none}.photo-card__address:hover{text-decoration:underline}.photo-address-link{position:relative}.photo-address-link::after{content:"Bekijk adres";position:absolute;right:10px;bottom:10px;background:rgba(255,255,255,.92);color:var(--brand-dark);border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:800;box-shadow:0 4px 14px rgba(0,0,0,.12)}


/* Aanvullingen v2: statistieken, vervallen panden, beeldbank-paginering */
.stats-strip{
  max-width:1160px;
  margin:-34px auto 36px;
  padding:0 20px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  position:relative;
  z-index:2;
}
.stats-strip article{
  background:rgba(255,255,255,.94);
  border:1px solid rgba(35,69,82,.12);
  border-radius:22px;
  box-shadow:0 18px 45px rgba(30,45,55,.10);
  padding:24px;
}
.stat-number{
  display:block;
  font-size:clamp(2rem,4vw,3.5rem);
  line-height:1;
  font-weight:800;
  color:#2f8aa3;
  letter-spacing:-.04em;
}
.stats-strip strong{
  display:block;
  margin-top:8px;
  color:#1f3f4d;
  font-size:1.05rem;
}
.stats-strip p{
  margin:8px 0 0;
  color:#667085;
}
.address-badge--demolished{
  background:#fff3e8;
  border-color:#e3b37f;
  color:#7a4517;
}
.current-note--warning{
  color:#7a4517;
}
.photo-pagination{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin:24px 0 6px;
}
.photo-pagination button{
  border:0;
  border-radius:999px;
  padding:10px 18px;
  background:#234552;
  color:#fff;
  font-weight:700;
  cursor:pointer;
}
.photo-pagination button:disabled{
  opacity:.35;
  cursor:not-allowed;
}
.photo-pagination span{
  color:#344054;
  font-weight:700;
}
@media (max-width:760px){
  .stats-strip{grid-template-columns:1fr;margin-top:20px}
}

/* Hanneke: fotokaarten in chat */
.chat-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:10px;margin-top:14px;}
.chat-photo-card{display:block;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 8px 18px rgba(31,41,51,.06);}
.chat-photo-card:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(31,41,51,.1);}
.chat-photo-card img{display:block;width:100%;height:105px;object-fit:cover;background:#eee;}
.chat-photo-card__body{display:block;padding:9px 10px;}
.chat-photo-card__body strong{display:block;margin:0;color:var(--brand-dark);font-size:.88rem;line-height:1.25;}
.chat-photo-card__body small{display:block;margin-top:3px;color:var(--muted);font-size:.78rem;line-height:1.25;}
@media(max-width:560px){.chat-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.chat-photo-card img{height:92px;}}

.chat-photo-grid--images-only{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));}
.chat-photo-card--image-only{line-height:0;background:#f6f0e7;}
.chat-photo-card--image-only img{height:145px;border-radius:14px;}
@media(max-width:560px){.chat-photo-grid--images-only{grid-template-columns:repeat(2,minmax(0,1fr));}.chat-photo-card--image-only img{height:120px;}}

/* Historische wandeling: routeversie */
.walk-route-page{width:min(1280px,100%);margin:0 auto;padding:42px 18px 84px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:22px;align-items:start}.walk-route-panel{position:sticky;top:100px}.walk-route-panel .eyebrow{color:var(--accent);font-weight:900}.walk-control-label{display:block;margin:18px 0 7px;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:900}.walk-select{width:100%;border:1px solid var(--line);border-radius:14px;padding:.78rem .9rem;background:#fff;font:inherit;font-weight:800;color:var(--ink)}.walk-new-route{width:100%;margin-top:12px}.walk-summary-box{margin:18px 0 12px;padding:16px;border-radius:18px;background:#f6f0e7;border:1px solid var(--line)}.walk-summary-box strong{display:block;color:var(--brand-dark);font-family:Fraunces,Georgia,serif;font-size:1.08rem}.walk-summary-box span{display:block;margin-top:4px;color:var(--muted);font-weight:800}.walk-legend{display:grid;gap:7px;margin-top:14px}.walk-route-main{display:grid;gap:22px;min-width:0}.walk-map-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.walk-map-head h2{margin:0;font-family:Fraunces,Georgia,serif;color:var(--brand-dark)}.walk-map-head p{margin:.2rem 0 0;color:var(--muted)}.walk-map--route{width:100%;height:560px;min-height:560px;border-radius:20px;overflow:hidden;background:#e8efe7;border:1px solid var(--line);isolation:isolate}.walk-stop-list{list-style:none;margin:0;padding:0;display:grid;gap:16px}.walk-stop-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;padding:16px;border:1px solid var(--line);border-radius:20px;background:#fff}.walk-stop-number{display:grid;place-items:center;width:38px;height:38px;border-radius:999px;background:var(--brand);color:#fff;font-weight:900;box-shadow:0 8px 18px rgba(31,41,51,.12)}.walk-stop-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.walk-stop-head h3{margin:0;font-family:Fraunces,Georgia,serif;color:var(--brand-dark);font-size:1.28rem}.walk-stop-head p{margin:.15rem 0 0;color:var(--muted);font-weight:800}.walk-stop-badges{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.walk-stop-badges span{display:inline-flex;align-items:center;border-radius:999px;background:#eef6f8;color:var(--brand-dark);padding:.34rem .58rem;font-size:.82rem;font-weight:900}.walk-stop-explanation{margin:.6rem 0 0;line-height:1.65}.walk-stop-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;max-width:390px}.walk-stop-photos a{display:block;aspect-ratio:4/3;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#eee}.walk-stop-photos img{width:100%;height:100%;object-fit:cover;display:block}.walk-stop-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:13px}.walk-marker--photo span{background:#2f6677}.walk-marker span{width:36px;height:36px}.walk-marker--monument span{background:var(--accent)}.walk-marker--cafe span{background:#7a4b25}@media(max-width:980px){.walk-route-page{grid-template-columns:1fr}.walk-route-panel{position:static}.walk-map--route{height:500px;min-height:500px}.walk-stop-head{display:block}.walk-stop-head .button-link{margin-top:10px}.walk-stop-photos{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}}@media(max-width:560px){.walk-route-page{padding-inline:12px}.walk-stop-card{grid-template-columns:1fr}.walk-stop-number{width:34px;height:34px}.walk-map--route{height:420px;min-height:420px}.walk-stop-photos{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Homepage redesign 2026-06: rustiger, vergelijkbaar met referentie Image4, met slider */
:root{
  --home-blue:#2f8aa3;
  --home-blue-dark:#234552;
  --home-soft:#f6f3ee;
  --home-text:#30353b;
}
body{background:#f7f5f1;color:var(--home-text)}
.site-header{
  position:sticky;
  top:0;
  z-index:30;
  display:block;
  padding:0 clamp(18px,4vw,54px);
  background:rgba(255,255,255,.96);
  border-bottom:1px solid #d9d6d0;
  box-shadow:0 8px 28px rgba(28,37,45,.06);
  backdrop-filter:blur(14px);
}
.site-header .brand{display:inline-flex;padding:22px 0 18px}
.site-header .brand img{max-height:54px;width:auto}
.main-nav{
  border-top:1px solid #d9d6d0;
  display:flex;
  gap:0;
  overflow-x:auto;
  scrollbar-width:thin;
}
.main-nav a{
  display:block;
  padding:16px 28px 17px 0;
  white-space:nowrap;
  font-family:Oswald,Inter,sans-serif;
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-size:.92rem;
  color:#34383d;
}
.main-nav a:hover{color:var(--home-blue)}
.home-page{background:#f7f5f1}
.home-hero{
  position:relative;
  min-height:520px;
  display:grid;
  place-items:center;
  overflow:hidden;
  isolation:isolate;
  background:#222;
}
.hero-slider,.hero-slide,.home-hero__overlay{position:absolute;inset:0}
.hero-slide{
  opacity:0;
  background-size:cover;
  background-position:center;
  transform:scale(1.04);
  transition:opacity 900ms ease, transform 6000ms linear;
  filter:grayscale(100%);
}
.hero-slide.is-active{opacity:1;transform:scale(1)}
.home-hero__overlay{
  z-index:1;
  background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.34)),linear-gradient(90deg,rgba(16,21,26,.25),rgba(16,21,26,.05));
}
.home-hero__inner{
  position:relative;
  z-index:2;
  width:min(1080px,100%);
  padding:80px 24px 120px;
  text-align:center;
  color:#fff;
}
.home-kicker,.eyebrow--dark{
  margin:0 0 16px;
  font-family:Oswald,Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:600;
}
.home-kicker{color:rgba(255,255,255,.82);font-size:.96rem}
.eyebrow--dark{color:var(--home-blue);font-size:.82rem}
.home-hero h1{
  margin:0 auto;
  max-width:880px;
  font-family:Oswald,Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.055em;
  font-size:clamp(2.8rem,7vw,6.6rem);
  line-height:.96;
  text-shadow:0 12px 34px rgba(0,0,0,.28);
}
.home-intro{
  max-width:720px;
  margin:24px auto 0;
  color:rgba(255,255,255,.92);
  font-size:clamp(1.05rem,2vw,1.28rem);
}
.slider-dots{
  position:absolute;
  z-index:3;
  left:50%;
  bottom:92px;
  transform:translateX(-50%);
  display:flex;
  gap:9px;
}
.slider-dots button{
  width:10px;height:10px;border-radius:999px;border:1px solid rgba(255,255,255,.88);
  background:transparent;cursor:pointer;padding:0;
}
.slider-dots button.is-active{background:#fff}
.home-live-updates--in-panel{
  margin:-30px calc(-1 * clamp(22px,4vw,46px)) 22px;
}
.home-live-updates__inner{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:46px;
  padding:10px clamp(14px,2vw,18px);
  border-radius:12px;
  border:1px solid #e3ebe9;
  background:linear-gradient(180deg,#f7fbfb 0%,#f2f8f7 100%);
}
.home-live-updates__label{
  flex-shrink:0;
  padding:4px 10px;
  border-radius:999px;
  border:0;
  background:rgba(47,102,119,.12);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--home-blue-dark);
  line-height:1.2;
}
.home-live-updates__rotator{
  position:relative;
  flex:1;
  min-width:0;
  height:1.45em;
}
.home-live-updates__item{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  opacity:0;
  transform:translateY(6px);
  transition:opacity .65s ease, transform .65s ease;
  pointer-events:none;
}
.home-live-updates__item.is-active{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}
.home-live-updates__icon{
  flex-shrink:0;
  font-size:1rem;
  line-height:1;
}
.home-live-updates__text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#4f5d67;
  font-size:.9rem;
  line-height:1.35;
}
.home-live-updates__text a{
  color:inherit;
  text-decoration:none;
}
.home-live-updates__text a:hover{
  color:var(--home-blue-dark);
}
.home-live-updates__text strong{
  color:var(--home-blue-dark);
  font-weight:700;
}
.search-panel--has-live .search-panel__title{
  margin-bottom:18px;
}
.home-search{
  position:relative;
  z-index:4;
  width:min(1280px,100%);
  margin:-74px auto 0;
  padding:0 24px;
}
.search-panel--home{
  margin:0;
  padding:30px clamp(22px,4vw,46px);
  border-radius:0;
  background:rgba(255,255,255,.97);
  border:1px solid #dfdcd6;
  box-shadow:0 22px 60px rgba(31,41,51,.16);
}
.search-panel__title{
  display:grid;
  grid-template-columns:minmax(220px,390px) 1fr;
  gap:28px;
  align-items:end;
  margin-bottom:18px;
}
.search-panel__title h2{
  margin:0;
  font-family:Oswald,Inter,sans-serif;
  color:var(--home-blue);
  text-transform:none;
  letter-spacing:.01em;
  font-size:clamp(1.8rem,3vw,2.55rem);
  line-height:1.05;
}
.search-panel__title p{margin:0;color:#667085;font-weight:600}
.search-row--large{grid-template-columns:minmax(0,1fr) 92px;gap:22px;margin-top:0}
.search-row--large input{
  border-radius:0;
  min-height:58px;
  border:1px solid #c9c4bc;
  font-size:1rem;
  background:#fff;
}
.search-row--large button{
  border-radius:0;
  min-height:58px;
  padding:0 22px;
  background:var(--home-blue);
  font-family:Oswald,Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:1rem;
}
.search-row--large button:hover{background:var(--home-blue-dark)}
.advanced-search{margin-top:16px;border-top:1px solid #ebe7df;padding-top:13px}
.advanced-search summary{cursor:pointer;color:var(--home-blue-dark);font-weight:800}
.advanced-search .filters{margin-top:14px}
.home-search-extra{margin:16px 0 0;font-size:.95rem}
.home-search-extra a{color:var(--home-blue-dark);font-weight:700;text-decoration:none}
.home-search-extra a:hover{text-decoration:underline}
.results-wrap--home{padding-top:28px;padding-bottom:18px}
.status{border-radius:0;border-color:#dfdcd6;box-shadow:0 8px 22px rgba(31,41,51,.04)}
.stats-strip{margin:20px auto 44px}
.home-welcome{
  width:min(1120px,100%);
  margin:0 auto 26px;
  padding:0 24px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:28px;
  align-items:start;
}
.home-welcome h2{
  margin:0 0 12px;
  font-family:Oswald,Inter,sans-serif;
  text-transform:uppercase;
  letter-spacing:.035em;
  font-size:clamp(2rem,4vw,3.2rem);
  line-height:1.02;
  color:#33383d;
}
.home-welcome p{max-width:740px;margin:0;color:#555f6a;font-size:1.08rem}
.quick-card{
  background:#fff;
  border:1px solid #dfdcd6;
  padding:22px;
  box-shadow:0 14px 36px rgba(31,41,51,.07);
}
.quick-card strong{display:block;color:var(--home-blue-dark);font-family:Oswald,Inter,sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:1.05rem}
.quick-card ul{margin:12px 0 0;padding-left:1.1rem;color:#555f6a}
.feature-grid--home{grid-template-columns:repeat(5,1fr);margin-bottom:34px}
.feature-grid--home a{
  border-radius:0;
  min-height:142px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.feature-grid--home a:hover{transform:translateY(-3px);border-color:rgba(47,138,163,.45);box-shadow:0 18px 38px rgba(31,41,51,.10)}
.feature-grid--home strong{font-family:Oswald,Inter,sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--home-blue-dark)}
.info-grid--home{margin-bottom:64px}
.info-grid--home article{border-radius:0;box-shadow:0 10px 28px rgba(31,41,51,.04)}
.info-grid--home h2{font-family:Oswald,Inter,sans-serif;text-transform:uppercase;letter-spacing:.035em}
.site-footer{background:#fff;border-top:1px solid #d9d6d0}
@media(max-width:1050px){.feature-grid--home{grid-template-columns:repeat(2,1fr)}.home-welcome{grid-template-columns:1fr}.search-panel__title{grid-template-columns:1fr}.home-hero{min-height:480px}.home-hero__inner{padding-bottom:116px}}
@media(max-width:800px){.site-header{padding:0 18px;align-items:stretch}.site-header .brand{padding:16px 0 12px}.site-header .brand img{max-height:44px}.main-nav{flex-wrap:nowrap}.main-nav a{padding:13px 22px 14px 0;font-size:.84rem}.home-hero{min-height:440px}.home-hero__inner{padding:58px 18px 108px}.home-search{margin-top:-52px;padding:0 14px}.search-panel--home{padding:20px 16px}.search-row--large{grid-template-columns:1fr;gap:12px}.search-row--large button{width:100%}.filters{grid-template-columns:1fr}.slider-dots{bottom:68px}.stats-strip{margin-top:18px}.feature-grid--home{grid-template-columns:1fr}.home-welcome{padding:0 18px}.info-grid--home{grid-template-columns:1fr}}
@media(max-width:760px){
  .home-live-updates--in-panel{
    margin:0 0 14px;
  }
  .home-live-updates__inner{
    flex-direction:row;
    align-items:flex-start;
    gap:10px;
    padding:10px 12px;
    border-radius:10px;
  }
  .home-live-updates__label{
    margin-top:2px;
    font-size:.62rem;
    padding:3px 8px;
    letter-spacing:.06em;
  }
  .home-live-updates__rotator{
    height:3.1em;
    width:auto;
    flex:1;
  }
  .home-live-updates__item{
    align-items:flex-start;
  }
  .home-live-updates__text{
    white-space:normal;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    font-size:.86rem;
    line-height:1.4;
  }
  .search-panel--has-live{
    padding-top:16px;
  }
  .search-panel--has-live .search-panel__title{
    margin-bottom:12px;
  }
  .search-panel--has-live .search-panel__title h2{
    font-size:1.45rem;
  }
  .search-row--large input{
    border:1px solid #c9c4bc;
    outline:none;
    box-shadow:none;
    -webkit-appearance:none;
    appearance:none;
  }
  .search-row--large input:focus{
    border-color:var(--home-blue);
    box-shadow:0 0 0 3px rgba(47,102,119,.14);
    outline:none;
  }
}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none;transform:none}.feature-grid--home a:hover{transform:none}}


/* Designupdate: rustiger lettertype + gecentreerde navigatie */
body{
  font-family:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:17px;
}
.site-header{
  padding:0 clamp(18px,4vw,54px);
  text-align:center;
}
.site-header .brand{
  display:flex;
  justify-content:center;
  width:100%;
  padding:18px 0 14px;
}
.site-header .brand img{max-height:52px}
.main-nav{
  justify-content:center;
  gap:6px;
  border-top:1px solid #e2dfd9;
}
.main-nav a{
  padding:15px 16px 16px;
  font-family:"Montserrat",system-ui,sans-serif;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.045em;
  text-transform:uppercase;
  border-bottom:3px solid transparent;
}
.main-nav a:hover{
  color:var(--home-blue-dark);
  border-bottom-color:var(--home-blue);
}
.home-kicker,.eyebrow--dark{
  font-family:"Montserrat",system-ui,sans-serif;
  letter-spacing:.11em;
  font-weight:700;
}
.home-hero h1{
  max-width:960px;
  font-family:"Merriweather",Georgia,serif;
  text-transform:none;
  letter-spacing:.01em;
  font-weight:900;
  font-size:clamp(2.65rem,5.8vw,5.7rem);
  line-height:1.05;
}
.home-intro{
  font-family:"Source Sans 3",system-ui,sans-serif;
  font-size:clamp(1.08rem,1.7vw,1.24rem);
  line-height:1.45;
}
.search-panel__title h2,
.home-welcome h2,
.feature-grid--home strong,
.info-grid--home h2,
.quick-card strong,
.search-row--large button{
  font-family:"Montserrat",system-ui,sans-serif;
  letter-spacing:.02em;
}
.search-panel__title h2{
  font-weight:800;
  line-height:1.08;
}
.search-row--large input{
  font-family:"Source Sans 3",system-ui,sans-serif;
  font-size:1.05rem;
}
@media(max-width:900px){.vt-field{grid-template-columns:1fr;gap:.25rem}
  .main-nav{justify-content:flex-start;gap:0}
  .main-nav a{padding:13px 14px 14px;font-size:.74rem}
  .home-hero h1{font-size:clamp(2.2rem,11vw,4rem)}
}

/* Designupdate v3: rustigere homepage-blokken + uniforme subpagina-headers */
:root{
  --surface:#ffffff;
  --surface-soft:#fbfaf7;
  --border-soft:#e8e3da;
  --text-soft:#59636f;
}

/* Subpagina's: uniforme paginakop (alleen titel, vaste hoogte) */
.page-header,
.subhero,
.page-hero,
.subhero--address,
.subhero--walk,
.subhero--member,
.subhero--information,
.subhero--curiosa,
.subhero--hanneke,
.page-hero--hanneke{
  display:flex;
  align-items:center;
  min-height:132px;
  padding:32px var(--page-gutter,clamp(18px,4vw,54px)) !important;
  background:
    linear-gradient(120deg,rgba(27,55,66,.86),rgba(47,102,119,.62)),
    url('../../assets/images/slider-03.jpg') center 42%/cover no-repeat !important;
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.22);
  box-sizing:border-box;
}
.page-header__inner,
.subhero>div,
.page-hero__content{
  width:min(1120px,100%);
  margin:0 auto;
}
.page-header h1,
.subhero h1,
.page-hero h1{
  margin:0 !important;
  max-width:900px;
  font-family:"Merriweather",Georgia,serif !important;
  text-transform:none !important;
  letter-spacing:.005em !important;
  font-weight:900 !important;
  font-size:clamp(1.85rem,3.8vw,3.2rem) !important;
  line-height:1.12 !important;
}
.page-header__extra{
  margin-top:10px;
}
.page-header__back{
  margin:0 0 8px;
}
.page-header__back-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:rgba(255,255,255,.92) !important;
  font-weight:700;
  font-size:.92rem;
  text-decoration:none;
}
.page-header__back-link:hover,
.page-header__back-link:focus-visible{
  color:#fff !important;
  text-decoration:underline;
  outline:none;
}
.page-header__extra .badge-row,
.subhero .badge-row{
  margin:0;
}
.subhero .eyebrow,
.subhero .lead,
.page-header .eyebrow,
.page-header .lead,
.page-hero .eyebrow,
.page-hero .lead{
  display:none !important;
}

/* Homepage: minder druk, meer redactionele rust */
.results-wrap--home{
  padding-top:22px;
}
.stats-strip{
  max-width:1120px;
  margin:10px auto 52px;
  gap:14px;
}
.stats-strip article{
  border-radius:18px;
  padding:22px 24px;
  box-shadow:0 10px 28px rgba(31,41,51,.055);
  background:rgba(255,255,255,.82);
}
.stat-number{
  font-size:clamp(2rem,3.3vw,3rem);
  color:var(--home-blue-dark);
  letter-spacing:-.035em;
}
.stats-strip strong{
  margin-top:6px;
  font-size:1rem;
  color:#253b45;
}
.stats-strip p{
  max-width:260px;
  margin-top:6px;
  font-size:.96rem;
  line-height:1.45;
}
.home-welcome{
  max-width:1120px;
  margin-bottom:34px;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:46px;
}
.home-welcome h2{
  max-width:760px;
  margin-bottom:16px;
  font-family:"Merriweather",Georgia,serif;
  text-transform:none;
  letter-spacing:0;
  font-size:clamp(2rem,3.6vw,3.45rem);
  line-height:1.12;
  color:#2f343a;
}
.home-welcome p{
  max-width:760px;
  color:var(--text-soft);
  font-size:1.08rem;
  line-height:1.7;
}
.quick-card{
  border-radius:18px;
  background:var(--surface-soft);
  border:1px solid var(--border-soft);
  box-shadow:none;
  padding:24px 26px;
}
.quick-card strong{
  font-size:.96rem;
  color:#263f4a;
}
.quick-card li{
  margin:.25rem 0;
}
.feature-grid--home{
  width:min(1120px,100%);
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin-bottom:38px;
}
.feature-grid--home a{
  min-height:0;
  border-radius:18px;
  padding:18px 18px 20px;
  background:rgba(255,255,255,.74);
  border:1px solid var(--border-soft);
  box-shadow:none;
}
.feature-grid--home a:hover{
  transform:none;
  background:#fff;
  border-color:rgba(47,138,163,.34);
  box-shadow:0 10px 26px rgba(31,41,51,.06);
}
.feature-grid--home strong{
  margin-bottom:7px;
  font-size:.96rem;
  line-height:1.35;
  letter-spacing:.025em;
}
.feature-grid--home span{
  margin:0;
  color:var(--text-soft);
  font-size:.96rem;
  line-height:1.45;
}
.info-grid--home{
  width:min(1120px,100%);
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-bottom:72px;
}
.info-grid--home article{
  border-radius:18px;
  background:rgba(255,255,255,.76);
  border:1px solid var(--border-soft);
  box-shadow:none;
  padding:26px 28px;
}
.info-grid--home h2{
  margin-bottom:14px;
  font-family:"Merriweather",Georgia,serif;
  text-transform:none;
  letter-spacing:0;
  font-size:1.32rem;
  line-height:1.35;
  color:#263f4a;
}
.info-grid--home p{
  color:var(--text-soft);
  line-height:1.7;
}

@media(max-width:1050px){
  .feature-grid--home{grid-template-columns:repeat(2,minmax(0,1fr));}
  .home-welcome{grid-template-columns:1fr;gap:22px;}
  .quick-card{max-width:520px;}
}
@media(max-width:800px){
  .page-header,.subhero,.page-hero,.subhero--address,.subhero--walk,.subhero--member,.subhero--information,.subhero--curiosa,.subhero--hanneke,.page-hero--hanneke{min-height:112px;padding:24px 16px !important;}
  .stats-strip{grid-template-columns:1fr;margin-bottom:34px;}
  .feature-grid--home,.info-grid--home{grid-template-columns:1fr;}
  .home-welcome h2{font-size:clamp(1.9rem,9vw,2.7rem);}
}


/* Designupdate v5: consistente contentbreedte + rustigere zoekpagina */
:root{
  --site-content-width:1120px;
  --page-gutter:clamp(18px,4vw,54px);
}
.site-frame,
.home-search,
.stats-strip,
.home-welcome,
.feature-grid--home,
.info-grid--home{
  width:min(var(--site-content-width),100%);
  max-width:var(--site-content-width);
  margin-left:auto;
  margin-right:auto;
  padding-left:24px;
  padding-right:24px;
}
.home-search{box-sizing:border-box;}
.results-wrap{box-sizing:border-box;padding-top:26px;}
.results-wrap--home{padding-bottom:26px;}
.stats-strip{box-sizing:border-box;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px;margin-bottom:42px;}
.stats-strip article{padding:20px 22px;min-height:0;border-radius:18px;box-shadow:0 10px 28px rgba(31,41,51,.06);}
.stats-strip .stat-number{font-size:2.25rem;line-height:1;}
.stats-strip strong{margin-top:6px;}
.stats-strip p{margin-top:6px;font-size:.95rem;line-height:1.35;}
.feature-grid--home,.info-grid--home{box-sizing:border-box;}
.home-welcome{box-sizing:border-box;}

/* Bij zoeken: focus op het resultaat, niet ook nog de volledige homepage eronder. */
.home-page.has-search-results .stats-strip,
.home-page.has-search-results .home-welcome,
.home-page.has-search-results .feature-grid--home,
.home-page.has-search-results .info-grid--home{display:none;}
.home-page.has-search-results .results-wrap--home{padding-bottom:72px;}
.home-page.has-search-results .status{margin-bottom:18px;}

/* Zoekresultaten exact binnen dezelfde maat als de zoekbalk. */
.results .result-card{width:100%;}
.result-card--compact{border-radius:20px;}
.result-compact{grid-template-columns:150px minmax(0,1fr);}

@media(max-width:900px){.vt-field{grid-template-columns:1fr;gap:.25rem}
  .stats-strip{grid-template-columns:1fr;}
}

/* Designupdate v6: homepage aankleding met beeldbank en monumenten */
.home-discovery{
  width:min(var(--site-content-width),100%);
  max-width:var(--site-content-width);
  margin:6px auto 44px;
  padding-left:24px;
  padding-right:24px;
  box-sizing:border-box;
}
.section-heading{max-width:720px;margin-bottom:22px;}
.section-heading h2{
  margin:4px 0 8px;
  font-family:var(--font-display);
  font-size:clamp(2rem,4.6vw,3.25rem);
  line-height:1.05;
  color:var(--ink);
}
.section-heading p{margin:0;color:var(--text-soft);font-size:1.05rem;line-height:1.65;}
.home-showcase{
  background:#fff;
  border:1px solid rgba(24,48,58,.11);
  border-radius:22px;
  box-shadow:0 16px 38px rgba(31,41,51,.06);
  padding:24px;
  margin-top:20px;
}
.showcase-title{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  margin-bottom:18px;
}
.showcase-icon{
  width:44px;height:44px;border-radius:14px;
  display:inline-flex;align-items:center;justify-content:center;
  background:#edf7f9;color:#2c8aa0;font-size:1.45rem;font-weight:800;
}
.showcase-title h3{
  margin:0;
  font-family:var(--font-sans);
  font-size:1.18rem;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:#183642;
}
.showcase-title p{margin:4px 0 0;color:var(--text-soft);line-height:1.45;}
.showcase-title>a{
  justify-self:end;
  border:1px solid rgba(28,58,69,.18);
  border-radius:999px;
  padding:10px 14px;
  color:#183642;
  text-decoration:none;
  font-weight:700;
  white-space:nowrap;
}
.showcase-title>a:hover{background:#edf7f9;border-color:#9ed3df;}
.home-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.home-photo-card{
  border:1px solid rgba(24,48,58,.09);
  border-radius:18px;
  overflow:hidden;
  background:#fbfaf7;
  transition:transform .18s ease,box-shadow .18s ease;
}
.home-photo-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(31,41,51,.08);}
.home-photo-card a{display:block;text-decoration:none;color:inherit;}
.home-photo-card img{display:block;width:100%;height:170px;object-fit:cover;filter:grayscale(100%);}
.home-photo-card div{padding:13px 14px 15px;}
.home-photo-card strong{display:block;color:#183642;font-size:1rem;line-height:1.25;}
.home-photo-card span{display:block;color:var(--text-soft);font-size:.94rem;margin-top:4px;line-height:1.35;}
.home-monument-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.home-monument-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  border:1px solid rgba(24,48,58,.09);
  border-radius:18px;
  padding:16px;
  background:#fbfaf7;
}
.monument-card-icon{
  width:46px;height:46px;border-radius:16px;
  display:flex;align-items:center;justify-content:center;gap:2px;
  background:#edf7f9;
}
.monument-card-icon img{width:21px;height:21px;object-fit:contain;}
.monument-card-icon span{font-size:1.35rem;color:#2c8aa0;font-weight:800;}
.home-monument-card strong{display:block;color:#183642;font-size:1.05rem;line-height:1.25;}
.home-monument-card span{display:block;color:var(--text-soft);font-size:.95rem;margin-top:3px;}
.home-monument-card small{display:block;color:#2c8aa0;font-weight:700;margin-top:5px;}
.home-monument-card>a{
  border:1px solid rgba(28,58,69,.18);
  border-radius:999px;
  padding:8px 12px;
  color:#183642;
  text-decoration:none;
  font-weight:700;
}
.home-monument-card>a:hover{background:#edf7f9;border-color:#9ed3df;}
.home-page.has-search-results .home-discovery{display:none;}
@media(max-width:900px){.vt-field{grid-template-columns:1fr;gap:.25rem}
  .home-discovery{padding-left:16px;padding-right:16px;}
  .showcase-title{grid-template-columns:auto minmax(0,1fr);}
  .showcase-title>a{grid-column:1/-1;justify-self:start;}
  .home-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .home-monument-grid{grid-template-columns:1fr;}
}
@media(max-width:560px){
  .home-showcase{padding:18px;}
  .home-photo-grid{grid-template-columns:1fr;}
  .home-photo-card img{height:190px;}
  .home-monument-card{grid-template-columns:auto minmax(0,1fr);}
  .home-monument-card>a{grid-column:1/-1;justify-self:start;}
}

/* Designupdate v7: zichtbare homepage-verrijking, iconen, tijdlijn en wist-u-dat */
:root{
  --font-display:"Merriweather",Georgia,serif;
  --font-sans:"Montserrat",system-ui,sans-serif;
}
.stat-icon,
.feature-icon,
.did-you-know-card__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--home-blue);
}
.stat-icon svg,
.feature-icon svg,
.did-you-know-card__icon svg{
  width:1em;
  height:1em;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.stat-icon svg path,
.stat-icon svg circle,
.feature-icon svg path,
.feature-icon svg circle,
.did-you-know-card__icon svg path,
.did-you-know-card__icon svg circle{vector-effect:non-scaling-stroke;}
.stats-strip--enhanced article{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-rows:auto auto auto;
  column-gap:14px;
  row-gap:0;
  align-items:start;
}
.stats-strip--enhanced article:after{
  content:"";
  position:absolute;
  right:-32px;
  top:-32px;
  width:96px;
  height:96px;
  border-radius:999px;
  background:rgba(47,138,163,.075);
  pointer-events:none;
}
.stats-strip--enhanced .stat-icon{
  grid-column:1;
  grid-row:1 / 4;
  width:42px;
  height:42px;
  border-radius:14px;
  background:#edf7f9;
  font-size:1.25rem;
  display:flex !important;
  align-items:center;
  justify-content:center;
}
.stats-strip--enhanced .stat-number{
  grid-column:2;
  grid-row:1;
}
.stats-strip--enhanced strong{
  grid-column:2;
  grid-row:2;
}
.stats-strip--enhanced p{
  grid-column:2;
  grid-row:3;
  margin:6px 0 0;
}
.feature-grid--icons a{position:relative;padding-top:20px;}
.feature-grid--icons .feature-icon{
  width:40px;
  height:40px;
  margin-bottom:14px;
  border-radius:14px;
  background:#edf7f9;
  font-size:1.15rem;
}
.home-insights{
  width:min(var(--site-content-width),100%);
  max-width:var(--site-content-width);
  margin:0 auto 42px;
  padding-left:24px;
  padding-right:24px;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:20px;
}
.home-timeline-card,
.did-you-know-card{
  background:#fff;
  border:1px solid rgba(24,48,58,.11);
  border-radius:22px;
  box-shadow:0 16px 38px rgba(31,41,51,.055);
  padding:26px;
}
.section-heading--compact{margin-bottom:18px;max-width:760px;}
.section-heading--compact h2{font-size:clamp(1.75rem,3.5vw,2.65rem);}
.register-timeline{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}
.register-timeline li{
  position:relative;
  min-height:112px;
  padding:15px 14px 14px;
  border:1px solid var(--border-soft);
  border-radius:16px;
  background:linear-gradient(180deg,#fff,#fbfaf7);
}
.register-timeline li:before{
  content:"";
  position:absolute;
  left:14px;
  top:-6px;
  width:12px;
  height:12px;
  border-radius:50%;
  background:var(--home-blue);
  box-shadow:0 0 0 5px #edf7f9;
}
.register-timeline strong{
  display:block;
  font-family:var(--font-sans);
  font-size:1.15rem;
  color:var(--home-blue-dark);
  margin-bottom:6px;
}
.register-timeline span{
  display:block;
  color:var(--text-soft);
  font-size:.92rem;
  line-height:1.35;
}
.did-you-know-card{
  background:linear-gradient(180deg,#fff,#fffaf1);
}
.did-you-know-card__icon{
  width:52px;
  height:52px;
  margin-bottom:16px;
  border-radius:18px;
  background:#fff3d9;
  color:#b9833c;
  font-size:1.35rem;
}
.did-you-know-card h2{
  margin:.25rem 0 .7rem;
  font-family:var(--font-display);
  color:#263f4a;
  line-height:1.2;
  font-size:1.65rem;
}
.did-you-know-card p,
.did-you-know-card li{color:var(--text-soft);line-height:1.6;}
.did-you-know-card ul{margin:14px 0 0;padding-left:1.15rem;}
.did-you-know-card li{margin:.35rem 0;}
.home-knowledge-card{
  background:linear-gradient(180deg,#fff,#fffaf1);
}
.home-knowledge-feature{
  display:grid;
  gap:14px;
  margin-top:4px;
}
.home-knowledge-feature__media{
  display:block;
  border-radius:16px;
  overflow:hidden;
  border:1px solid rgba(24,48,58,.1);
  background:#eef2f5;
}
.home-knowledge-feature__media img{
  display:block;
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}
.home-knowledge-feature__body h3{
  margin:8px 0 10px;
  font-family:var(--font-serif);
  font-size:1.35rem;
  line-height:1.25;
  color:var(--home-blue-dark);
}
.home-knowledge-feature__body h3 a{
  color:inherit;
  text-decoration:none;
}
.home-knowledge-feature__body h3 a:hover{
  text-decoration:underline;
}
.home-knowledge-feature__type{
  margin:0;
}
.home-knowledge-feature__body p{
  margin:0 0 12px;
  color:var(--text-soft);
  line-height:1.6;
}
.home-knowledge-list{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  border-top:1px solid rgba(24,48,58,.1);
}
.home-knowledge-list li{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  padding:11px 0;
  border-bottom:1px solid rgba(24,48,58,.08);
}
.home-knowledge-list li:last-child{border-bottom:0;}
.home-knowledge-list a{
  color:var(--brand-dark);
  font-weight:700;
  text-decoration:none;
}
.home-knowledge-list a:hover{
  text-decoration:underline;
}
.home-knowledge-list span{
  flex-shrink:0;
  color:var(--muted);
  font-size:.82rem;
}
.home-knowledge-note{
  margin:16px 0 0;
  font-size:.88rem;
  line-height:1.5;
}
.address-knowledge-card .section-heading h2{
  margin:0;
  font-size:1.35rem;
}
.address-knowledge-card__feature{
  margin-top:12px;
}
.home-page.has-search-results .home-insights{display:none;}
.home-page.has-search-results .support-callout{display:none;}
@media(max-width:1050px){
  .home-insights{grid-template-columns:1fr;}
  .register-timeline{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:900px){.vt-field{grid-template-columns:1fr;gap:.25rem}
  .home-insights{padding-left:16px;padding-right:16px;}
}
@media(max-width:900px){
  .stats-strip--enhanced article{
    grid-template-columns:1fr;
    grid-template-rows:auto;
    row-gap:0;
  }
  .stats-strip--enhanced .stat-icon{
    grid-column:1;
    grid-row:auto;
    margin-bottom:10px;
  }
  .stats-strip--enhanced .stat-number,
  .stats-strip--enhanced strong,
  .stats-strip--enhanced p{
    grid-column:1;
    grid-row:auto;
  }
}
@media(max-width:560px){
  .register-timeline{grid-template-columns:1fr;}
}

/* Correctie v8: tijdlijn vervangen door extra beeldbankblok + perfecte icooncentrering */
.stat-icon,
.feature-icon,
.showcase-icon,
.monument-card-icon,
.did-you-know-card__icon{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center;
  line-height:1;
  flex:0 0 auto;
}
.stat-icon svg,
.feature-icon svg,
.did-you-know-card__icon svg{
  display:block;
  margin:auto;
}
.feature-grid--icons .feature-icon{
  margin-left:0;
  margin-right:auto;
}
.showcase-icon{
  font-family:var(--font-sans);
  padding-bottom:1px;
}
.monument-card-icon{
  flex-wrap:nowrap;
  overflow:hidden;
}
.monument-card-icon img{
  display:block;
  margin:0 auto;
}
.home-photo-highlight-card .home-photo-grid--compact{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:8px;
}
.home-photo-card--small img{
  height:135px;
}
.home-photo-card--small div{
  padding:10px 11px 12px;
}
.home-photo-card--small strong{
  font-size:.93rem;
}
.home-photo-card--small span{
  font-size:.86rem;
}
.home-photo-more{
  margin:16px 0 0;
}
.home-photo-more a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(28,58,69,.18);
  border-radius:999px;
  padding:10px 14px;
  color:#183642;
  text-decoration:none;
  font-weight:700;
}
.home-photo-more a:hover{background:#edf7f9;border-color:#9ed3df;}
@media(max-width:700px){
  .home-photo-highlight-card .home-photo-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:480px){
  .home-photo-highlight-card .home-photo-grid--compact{grid-template-columns:1fr;}
  .home-photo-card--small img{height:190px;}
}


/* Correctie v10: homepagefoto's via dezelfde tabelvelden als de beeldbank + iconen exact gecentreerd */
.feature-grid--icons a{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.feature-grid--icons .feature-icon{
  margin-left:auto !important;
  margin-right:auto !important;
}
.feature-icon svg,
.stat-icon svg,
.did-you-know-card__icon svg{
  display:block;
  transform:none;
}
.home-photo-highlight-card .muted + .home-photo-more,
.home-photo-highlight-card .muted a{
  display:inline-flex;
}

/* Designupdate v12: betere mobiele weergave */
@media(max-width:760px){
  body{font-size:16px;overflow-x:hidden;}

  .site-header{
    position:relative;
    padding:0;
    background:rgba(251,247,239,.98);
  }
  .site-header .brand{
    padding:12px 14px 10px;
  }
  .site-header .brand img{max-height:40px;}

  /* Het menu is op mobiel volledig zichtbaar i.p.v. half buiten beeld. */
  .main-nav{
    width:100%;
    max-width:none;
    padding:8px 10px 12px !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    overflow:visible;
    border-top:1px solid #e5ded4;
    background:#fffaf2;
  }
  .main-nav a{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:10px 8px !important;
    border:1px solid #e3dbcf;
    border-radius:12px;
    background:#fff;
    text-align:center;
    white-space:normal;
    line-height:1.15;
    font-size:.72rem !important;
    letter-spacing:.025em;
  }
  .main-nav a:hover,
  .main-nav a:focus{
    border-color:var(--brand);
    background:#eef6f8;
  }

  .home-hero{min-height:390px;}
  .home-hero__inner{padding:46px 16px 90px;}
  .home-hero h1{font-size:clamp(2rem,10vw,3.2rem);}
  .home-intro{font-size:1rem;}
  .home-search{margin-top:-40px;padding-left:12px;padding-right:12px;}
  .search-panel--home{padding:18px 14px;}
  .search-panel__title{gap:10px;margin-bottom:14px;}
  .search-panel__title h2{font-size:1.55rem;}

  .search-row,
  .search-row--large,
  .search-row--right{
    grid-template-columns:1fr !important;
    gap:10px;
  }
  .search-row input,
  .filters input,
  .filters select,
  .walk-select{
    min-height:48px;
    font-size:16px;
  }
  .search-row button,
  .search-row--large button,
  .button-link,
  .toggle,
  .photo-pagination button,
  .walk-list button,
  .walk-show-on-map{
    min-height:46px;
    min-width:44px;
    padding:12px 16px;
    font-size:1rem;
    line-height:1.2;
  }

  /* Subpagina-knoppen groter en makkelijker aantikbaar. */
  .button-link{
    width:100%;
    border-radius:14px;
    text-align:center;
  }
  .result-actions,
  .address-actions,
  .walk-stop-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    width:100%;
  }
  .result-compact,
  .address-page,
  .walk-route-page,
  .walk-page{
    padding-left:12px;
    padding-right:12px;
  }
  .result-compact{grid-template-columns:1fr;gap:14px;}
  .result-thumb{width:100%;max-height:230px;}
  .result-card__head{padding:18px;}
  .result-details{padding:0 16px 18px;}
  .timeline-mini{padding:0 16px 18px;}

  .subhero,
  .page-header,
  .page-hero,
  .subhero--address,
  .subhero--walk,
  .subhero--member,
  .subhero--information,
  .subhero--curiosa,
  .subhero--hanneke,
  .page-hero--hanneke{
    min-height:112px;
    padding:24px 16px !important;
  }
  .subhero h1,
  .page-header h1,
  .page-hero h1{font-size:clamp(1.65rem,7vw,2.2rem) !important;}
  .lead{font-size:1rem;}

  .wiki-card,
  .address-facts,
  .home-showcase,
  .quick-card,
  .info-grid article{
    border-radius:18px;
    padding:18px;
  }
  .photo-grid{grid-template-columns:1fr;}
  .photo-grid--address{grid-template-columns:repeat(2,minmax(0,1fr));}

  table{min-width:720px;}
  th,td{padding:10px;}
}

@media(max-width:420px){
  .main-nav{grid-template-columns:1fr;}
  .main-nav a{min-height:42px;}
  .home-photo-grid{grid-template-columns:1fr;}
}


/* v13: mobiel hamburger-menu en grotere tikvlakken */
.mobile-nav-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:10px 16px;
  border:1px solid rgba(25,71,86,.22);
  border-radius:999px;
  background:#fffdf8;
  color:var(--brand-dark);
  font-weight:800;
  font-family:inherit;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(31,41,51,.08);
}
.mobile-nav-toggle__bars,
.mobile-nav-toggle__bars::before,
.mobile-nav-toggle__bars::after{
  display:block;
  width:22px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transition:transform .18s ease, opacity .18s ease;
}
.mobile-nav-toggle__bars{position:relative;}
.mobile-nav-toggle__bars::before,
.mobile-nav-toggle__bars::after{content:'';position:absolute;left:0;}
.mobile-nav-toggle__bars::before{top:-7px;}
.mobile-nav-toggle__bars::after{top:7px;}
body.mobile-nav-open .mobile-nav-toggle__bars{background:transparent;}
body.mobile-nav-open .mobile-nav-toggle__bars::before{transform:translateY(7px) rotate(45deg);}
body.mobile-nav-open .mobile-nav-toggle__bars::after{transform:translateY(-7px) rotate(-45deg);}

@media(max-width:800px){
  .site-header{
    position:sticky;
    display:grid !important;
    grid-template-columns:1fr auto;
    align-items:center !important;
    gap:10px 12px;
    padding:12px 14px !important;
  }
  .site-header .brand{
    width:auto;
    margin:0 !important;
    padding:0 !important;
    min-width:0;
  }
  .site-header .brand img{max-height:42px;}
  .mobile-nav-toggle{display:inline-flex;justify-self:end;}
  .main-nav{
    grid-column:1 / -1;
    display:none !important;
    width:100%;
    max-width:none !important;
    margin:4px 0 0 !important;
    padding:10px !important;
    border:1px solid var(--line);
    border-radius:18px;
    background:#fffdf8;
    box-shadow:0 16px 38px rgba(31,41,51,.12);
    overflow:visible !important;
  }
  body.mobile-nav-open .main-nav{display:grid !important;grid-template-columns:1fr;gap:6px;}
  .main-nav a{
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    min-height:48px !important;
    width:100%;
    padding:12px 14px !important;
    border-radius:14px;
    background:#f7efe3;
    color:var(--brand-dark) !important;
    font-size:1rem !important;
    font-weight:800;
    text-align:left;
  }
  .main-nav a::after{content:'›';font-size:1.25rem;line-height:1;color:var(--accent);}
  .main-nav a:hover,.main-nav a:focus{background:#eef6f8;outline:none;}

  .button,
  .btn,
  button,
  input[type="submit"],
  .toggle,
  .search-row button,
  .search-row--large button,
  .details-actions a,
  .result-card a[class*="btn"]{
    min-height:46px;
    padding-top:12px;
    padding-bottom:12px;
  }
}

@media(min-width:801px){
  .mobile-nav-toggle{display:none !important;}
  .main-nav{display:flex !important;}
}


/* v14 logo redesign */
.site-header{
    position:sticky;
    top:0;
    z-index:10;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:stretch;
    gap:12px;
    width:100%;
    max-width:none;
    margin-left:0;
    margin-right:0;
    box-sizing:border-box;
    padding:12px clamp(18px,4vw,54px) 18px;
}

.brand--logo{
    min-width:auto;
    width:100%;
    justify-content:center;
}

.brand__mark{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    padding:0 !important;
}

.brand__mark img{
    width:min(320px,90vw) !important;
    max-height:120px !important;
}

.main-nav{
    justify-content:center;
    flex-wrap:wrap;
    width:100%;
    max-width:none;
    box-sizing:border-box;
}

@media (max-width:768px){
  .site-header{
      flex-direction:row;
      justify-content:space-between;
      align-items:center;
      padding:12px 16px;
      width:100%;
      max-width:none;
  }
  .brand--logo{
      width:auto;
      justify-content:flex-start;
  }
  .brand__mark img{
      width:min(260px,60vw) !important;
      max-height:72px !important;
  }
}

/* Informatie pagina */
.info-layout {
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto 48px;
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 22px;
}

.info-sidebar,
.content-card {
    background: rgba(255,250,243,.94);
    border: 1px solid rgba(90,68,45,.15);
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(60,43,28,.08);
}

.info-sidebar {
    padding: 22px;
    align-self: start;
    position: sticky;
    top: 18px;
}

.info-sidebar h2 {
    margin-top: 0;
    font-size: 1.15rem;
}

.info-sidebar nav {
    display: grid;
    gap: 8px;
}

.info-sidebar a {
    padding: 10px 12px;
    border-radius: 14px;
    text-decoration: none;
    color: var(--ink, #2e261e);
    font-weight: 700;
}

.info-sidebar a:hover,
.info-sidebar a.is-active {
    background: #f0e2cf;
    color: #614124;
}

.content-card {
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto 48px;
    padding: clamp(22px, 4vw, 42px);
}

.info-layout .content-card {
    width: auto;
    margin: 0;
}

.rich-content {
    font-size: 1.08rem;
    line-height: 1.75;
}

.rich-content h2,
.rich-content h3,
.rich-content h4 {
    margin-top: 1.4em;
}

.rich-content img {
    max-width: 100%;
    height: auto;
}

.attachment-link a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 18px;
    border-radius: 999px;
    padding: 12px 16px;
    background: #8b5e34;
    color: #fff;
    text-decoration: none;
    font-weight: 800;
}

@media (max-width: 800px) {
    .info-layout {
        grid-template-columns: 1fr;
    }
    .info-sidebar {
        position: static;
    }
}

/* v21: Informatie is een normaal menu-item; onderwerpen staan op informatie.php zelf */
.info-sidebar nav a{display:block;}
@media (max-width:800px){
  .info-sidebar{padding:16px;}
  .info-sidebar nav{display:flex;overflow-x:auto;gap:8px;padding-bottom:4px;}
  .info-sidebar nav a{white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;}
}

/* v22: informatiepagina dezelfde centrale contentbreedte als de rest van de site */
.page--informatie{
  padding:0 0 64px;
}
.page--informatie .subpage-hero{
  width:min(1180px, calc(100% - 32px));
  margin:0 auto;
  padding:46px 0 24px;
}
.page--informatie .subpage-hero .eyebrow,
.page--informatie .subpage-hero h1,
.page--informatie .subpage-hero p{
  max-width:760px;
}
.page--informatie .subpage-hero h1{
  margin:.25rem 0 .8rem;
  font-family:var(--font-display, Merriweather, Georgia, serif);
  font-size:clamp(2rem, 4vw, 3.35rem);
  line-height:1.12;
  color:#26313a;
}
.page--informatie .subpage-hero p{
  margin:0;
  color:var(--muted, #667085);
  font-size:1.08rem;
}
.page--informatie .info-layout{
  width:min(1180px, calc(100% - 32px));
  align-items:start;
}
.page--informatie .info-sidebar{
  top:170px;
}
.page--informatie .info-article.content-card{
  max-width:none;
}
.page--informatie .rich-content{
  max-width:780px;
}
.page--informatie .rich-content p:first-child{
  margin-top:0;
}
@media(max-width:800px){
  .page--informatie .subpage-hero{
    padding:30px 0 18px;
  }
  .page--informatie .info-layout{
    gap:16px;
  }
  .page--informatie .info-sidebar{
    top:auto;
  }
  .page--informatie .rich-content{
    max-width:none;
  }
}

.attachment-list {
    margin-top: 26px;
}

.attachment-list h3 {
    margin: 0 0 6px;
    color: var(--ink, #24303a);
}

.attachment-list .attachment-link {
    margin: 8px 0 0;
}


/* v24: informatiepagina gelijkgetrokken met de andere subpagina's */
.page--informatie{
  padding:0;
}
.results-wrap--information{
  width:100%;
  max-width:none;
  margin:0;
  padding:32px var(--page-gutter) 80px;
  box-sizing:border-box;
}
.results-wrap--information > *{
  width:min(var(--site-content-width),100%);
  max-width:var(--site-content-width);
  margin-inline:auto;
}
.page--informatie .info-layout{
  width:100%;
  margin:0;
  display:block;
}
.page--informatie .info-sidebar{
  position:sticky;
  top:120px;
  padding:22px;
  border-radius:22px;
  background:var(--card);
  border:1px solid var(--line);
  box-shadow:0 10px 30px rgba(31,41,51,.06);
}
.page--informatie .info-sidebar h2{
  margin:0 0 14px;
  font-size:.82rem;
  line-height:1.2;
  text-transform:uppercase;
  letter-spacing:.11em;
  color:var(--brand-dark);
}
.page--informatie .info-sidebar nav{
  display:grid;
  gap:8px;
}
.page--informatie .info-sidebar a{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:10px 12px;
  border-radius:14px;
  color:var(--ink);
  text-decoration:none;
  font-weight:800;
}
.page--informatie .info-sidebar a::before{
  content:'📄';
  font-size:1rem;
  line-height:1;
}
.page--informatie .info-sidebar a:hover,
.page--informatie .info-sidebar a.is-active{
  background:#eef6f8;
  color:var(--brand-dark);
}
.page--informatie .info-article.content-card,
.page--informatie .info-empty-card{
  width:auto;
  max-width:none;
  margin:0;
  padding:clamp(24px,4vw,42px);
  border-radius:24px;
  background:var(--card);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.page--informatie .info-article h2,
.page--informatie .info-empty-card h2{
  margin:0 0 18px;
  font-family:Fraunces,Georgia,serif;
  color:var(--brand-dark);
  font-size:clamp(1.7rem,3vw,2.45rem);
  line-height:1.12;
}
.page--informatie .rich-content{
  max-width:none;
  font-size:1.08rem;
  line-height:1.78;
}
.page--informatie .rich-content table{
  width:100%;
  border-collapse:collapse;
  margin:1.4em 0;
  font-size:.98em;
}
.page--informatie .rich-content th,
.page--informatie .rich-content td{
  border:1px solid var(--line);
  padding:10px 12px;
  vertical-align:top;
  text-align:left;
}
.page--informatie .rich-content th{
  background:#f7fbfc;
  color:var(--brand-dark);
}
.page--informatie .rich-content p:first-child{margin-top:0;}
.page--informatie .rich-content h1,
.page--informatie .rich-content h2,
.page--informatie .rich-content h3{
  color:var(--brand-dark);
  line-height:1.2;
}
.page--informatie .rich-content ul,
.page--informatie .rich-content ol{
  padding-left:1.35rem;
}
.attachment-list{
  margin-top:30px;
  padding-top:22px;
  border-top:1px solid var(--line);
}
.attachment-list h3{
  margin:0 0 14px;
  font-size:.9rem;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:var(--brand-dark);
}
.attachment-items{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.attachment-list .attachment-link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:44px;
  margin:0;
  padding:10px 15px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--accent);
  color:#8a5a16;
  text-decoration:none;
  font-weight:900;
}
.attachment-list .attachment-link:hover{
  background:#fff7ea;
}
.attachment-icon{line-height:1;}
@media(max-width:800px){
  .results-wrap--information{padding:24px 16px 56px;}
  .page--informatie .info-layout{grid-template-columns:1fr;gap:16px;}
  .page--informatie .info-sidebar{position:static;padding:16px;}
  .page--informatie .info-sidebar nav{
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding-bottom:4px;
    -webkit-overflow-scrolling:touch;
  }
  .page--informatie .info-sidebar a{
    flex:0 0 auto;
    white-space:nowrap;
  }
  .page--informatie .info-article.content-card,
  .page--informatie .info-empty-card{
    padding:22px 18px;
    border-radius:20px;
  }
  .attachment-items{display:grid;grid-template-columns:1fr;}
  .attachment-list .attachment-link{justify-content:flex-start;border-radius:16px;}
}

/* Aanvullingen: adres-suggesties, vroeger/nu en foto van de dag */
.search-panel--home{position:relative}.address-suggestions{margin-top:10px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 16px 42px rgba(31,41,51,.16);overflow:hidden}.address-suggestion{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;border:0;border-bottom:1px solid #f0e7db;background:#fff;padding:12px 15px;text-align:left;cursor:pointer;font:inherit}.address-suggestion:last-child{border-bottom:0}.address-suggestion:hover,.address-suggestion:focus{background:#f7fbfc;outline:none}.address-suggestion span{font-weight:900;color:var(--brand-dark)}.address-suggestion small{color:var(--muted);font-weight:700;white-space:nowrap}.then-now-card .section-heading{margin-bottom:16px}.then-now-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.then-now-panel{margin:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}.then-now-panel a,.then-now-panel iframe{display:block;width:100%;height:360px}.then-now-panel img{width:100%;height:360px;object-fit:cover;display:block}.then-now-panel iframe{border:0;background:#e8efe7}.then-now-panel figcaption{padding:11px 14px;color:var(--muted);font-weight:800;background:#fffaf1}.then-now-actions{margin-top:14px;display:flex;justify-content:flex-end}.daily-pick{width:min(1120px,100%);margin:24px auto 56px;padding:0 18px;display:grid;grid-template-columns:minmax(280px,430px) 1fr;gap:24px;align-items:center}.daily-pick__image{border-radius:28px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff}.daily-pick__image a,.daily-pick__image img{display:block;width:100%}.daily-pick__image img{aspect-ratio:4/3;object-fit:cover}.daily-pick__body{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow)}.daily-pick__body h2{margin:.1rem 0 .5rem;font-family:Fraunces,Georgia,serif;color:var(--brand-dark);font-size:clamp(1.7rem,3vw,2.5rem)}.daily-pick__body .button-link{margin-top:10px}@media(max-width:800px){.address-suggestion{align-items:flex-start;flex-direction:column;gap:2px}.then-now-grid,.daily-pick{grid-template-columns:1fr}.then-now-panel a,.then-now-panel iframe,.then-now-panel img{height:280px}.daily-pick{margin:18px auto 42px}}

/* Correcties: vroeger/nu compact, vaste fotomaat en homepage foto van de dag zichtbaar */
.then-now-compare{
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(260px,1fr);
  gap:16px;
  align-items:stretch;
}
.then-now-panel{
  margin:0;
  border:1px solid var(--line);
  border-radius:20px;
  overflow:hidden;
  background:#fff;
  min-width:0;
}
.then-now-panel a,
.then-now-panel iframe,
.then-now-panel img{
  display:block;
  width:100%;
}
.then-now-panel a,
.then-now-panel iframe,
.then-now-panel img,
.streetview-fallback{
  height:340px;
}
.then-now-panel img{
  object-fit:cover;
  object-position:center center;
}
.then-now-panel iframe{
  border:0;
  background:#e8efe7;
}
.then-now-panel figcaption{
  padding:11px 14px;
  color:var(--muted);
  font-weight:800;
  background:#fffaf1;
}
.then-now-current{
  min-width:0;
}
.then-now-tabs{
  display:flex;
  gap:8px;
  margin:0 0 10px;
  background:#f8efe2;
  border:1px solid var(--line);
  border-radius:999px;
  padding:5px;
  width:max-content;
  max-width:100%;
}
.then-now-tabs button{
  border:0;
  border-radius:999px;
  background:transparent;
  color:var(--brand-dark);
  font:inherit;
  font-weight:900;
  padding:8px 14px;
  cursor:pointer;
}
.then-now-tabs button.is-active{
  background:#fff;
  box-shadow:0 6px 18px rgba(31,41,51,.12);
}
.then-now-panel[data-then-now-panel]{
  transition:opacity .18s ease, transform .18s ease;
}
.then-now-panel[data-then-now-panel][hidden]{
  display:none;
}
.streetview-fallback{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  gap:10px;
  padding:24px;
  background:linear-gradient(135deg,#f7fbfc,#fff7ea);
}
.streetview-fallback strong{
  color:var(--brand-dark);
  font-size:1.2rem;
}
.streetview-fallback p{
  margin:0;
  color:var(--muted);
  max-width:34rem;
}
.then-now-actions{
  margin-top:14px;
  display:flex;
  gap:10px;
  justify-content:flex-end;
  flex-wrap:wrap;
}
.daily-pick{
  width:min(1120px,100%);
  margin:24px auto 42px;
  padding:0 18px;
  display:grid;
  grid-template-columns:minmax(260px,420px) 1fr;
  gap:24px;
  align-items:center;
}
.daily-pick__image{
  border-radius:28px;
  overflow:hidden;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  background:#fff;
}
.daily-pick__image a,.daily-pick__image img{
  display:block;
  width:100%;
}
.daily-pick__image img{
  aspect-ratio:4/3;
  object-fit:cover;
  object-position:center center;
}
.daily-pick__body{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:28px;
  padding:28px;
  box-shadow:var(--shadow);
}
.daily-pick__body h2{
  margin:.1rem 0 .5rem;
  font-family:Fraunces,Georgia,serif;
  color:var(--brand-dark);
  font-size:clamp(1.7rem,3vw,2.5rem);
}
.daily-pick__body .button-link{
  margin-top:10px;
}
@media(max-width:800px){
  .then-now-compare,.daily-pick{grid-template-columns:1fr;}
  .then-now-panel a,.then-now-panel iframe,.then-now-panel img,.streetview-fallback{height:280px;}
  .then-now-tabs{width:100%;}
  .then-now-tabs button{flex:1;}
}

/* V3: vroeger/nu toont altijd direct Google Street View naast de historische foto */
.then-now-card .then-now-compare{
  grid-template-columns:minmax(260px,1fr) minmax(260px,1fr);
  align-items:stretch;
}
.then-now-card .then-now-panel--photo,
.then-now-card .then-now-panel--streetview{
  height:auto;
}
.then-now-card .then-now-panel--photo a,
.then-now-card .then-now-panel--photo img,
.then-now-card .then-now-panel--streetview iframe{
  height:340px;
}
.then-now-card .then-now-panel--photo img{
  object-fit:cover;
  object-position:center center;
}
.then-now-card .then-now-panel--streetview iframe{
  border:0;
  width:100%;
  display:block;
  background:#e8efe7;
}
@media(max-width:800px){
  .then-now-card .then-now-compare{grid-template-columns:1fr;}
  .then-now-card .then-now-panel--photo a,
  .then-now-card .then-now-panel--photo img,
  .then-now-card .then-now-panel--streetview iframe{height:280px;}
}

.walk-export-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  align-items: center;
}

.walk-export-actions .button-link {
  margin-top: 0;
}

/* Wandeling: statusmelding alleen tonen wanneer er tekst staat */
.walk-route-panel #walkStatus.status:empty,
.walk-route-panel #walkStatus.status[hidden]{
  display:none;
}
.walk-route-panel #walkStatus.status{
  margin:14px 0 0;
  padding:12px 14px;
  border-radius:14px;
}

/* Homepage kaart met monumenten en oude cafés */
.home-showcase--map{width:100%;box-sizing:border-box;overflow:hidden;}
.home-monument-map{width:100%;height:440px;min-height:440px;border:1px solid rgba(24,48,58,.11);border-radius:18px;background:#e8efe7;overflow:hidden;isolation:isolate;}
.home-map-status{margin-top:12px;padding:11px 14px;border:1px solid rgba(24,48,58,.12);border-radius:14px;background:#fbfaf7;color:var(--text-soft);font-weight:700;}
.home-map-marker{background:transparent;border:0;}
.home-map-marker>span{display:flex;align-items:center;justify-content:center;gap:2px;min-width:38px;height:38px;padding:3px;border-radius:999px;background:#fff;border:2px solid rgba(255,255,255,.95);box-shadow:0 8px 22px rgba(15,23,42,.24);}
.home-map-marker img{width:21px;height:21px;object-fit:contain;display:block;}
.home-map-marker span span{color:#234552;font-weight:900;line-height:1;}
@media(max-width:900px){.home-monument-map{height:360px;min-height:360px;}}

/* Fix homepagekaart: dezelfde contentbreedte als de rest van de homepage */
.home-discovery--map{
  width:min(var(--site-content-width),100%);
  max-width:var(--site-content-width);
  margin:0 auto 28px;
  padding-left:24px;
  padding-right:24px;
  box-sizing:border-box;
}
.home-discovery--map .home-showcase--map{
  width:100%;
  max-width:100%;
  margin-left:0;
  margin-right:0;
}
@media(max-width:900px){
  .home-discovery--map{padding-left:16px;padding-right:16px;}
}

.home-map-marker{cursor:pointer;}
.map-popup-link{display:inline-block;margin-top:6px;font-weight:800;color:var(--accent,#8a5a14);}

/* Hanneke brede chatlayout */
.subhero--hanneke p{display:none !important;}
.chat-page--wide{width:min(1280px,100%);}
.chat-helper{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:18px;padding:20px 22px;background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);}
.chat-helper h2{margin:0 0 .35rem;font-family:Fraunces,Georgia,serif;color:var(--brand-dark);}
.chat-helper p{margin:0;color:var(--muted);max-width:760px;}
.chat-helper .prompt-chips{justify-content:flex-end;margin:0;max-width:520px;}
.chat-layout--wide{display:block;}
.chat-layout--wide .chat-card{width:100%;}
.chat-layout--wide .chat-messages{height:min(720px,72vh);min-height:520px;padding:26px;}
.chat-layout--wide .chat-bubble{max-width:min(920px,88%);}
.chat-layout--wide .chat-form{padding:18px 20px 20px;}
.chat-layout--wide .chat-form textarea{min-height:92px;font-size:1.03rem;}
@media(max-width:900px){.chat-helper{display:block}.chat-helper .prompt-chips{justify-content:flex-start;margin-top:14px;max-width:none}.chat-layout--wide .chat-messages{height:auto;min-height:420px;padding:18px}.chat-layout--wide .chat-bubble{max-width:92%;}}

/* Hanneke compactere chat + typing-indicator */
.chat-helper--compact{display:block;margin-bottom:14px;padding:18px 20px;}
.chat-helper--compact h2{margin:0 0 .3rem;font-family:Fraunces,Georgia,serif;color:var(--brand-dark);}
.chat-helper--compact p{margin:0;color:var(--muted);max-width:900px;}
.chat-layout--wide .chat-messages{height:min(560px,58vh);min-height:390px;padding:22px;}
.chat-layout--wide .chat-form textarea{min-height:78px;}
.typing-dots{display:inline-flex;align-items:center;gap:6px;min-height:20px;padding:3px 0;}
.typing-dots span{width:8px;height:8px;border-radius:999px;background:var(--muted);opacity:.45;animation:hannekeTypingDot 1.15s infinite ease-in-out;}
.typing-dots span:nth-child(2){animation-delay:.18s;}
.typing-dots span:nth-child(3){animation-delay:.36s;}
@keyframes hannekeTypingDot{0%,70%,100%{transform:translateY(0);opacity:.38;}35%{transform:translateY(-5px);opacity:1;}}
@media(max-width:900px){.chat-helper--compact{padding:16px 18px}.chat-layout--wide .chat-messages{height:min(460px,56vh);min-height:340px;padding:18px}.chat-layout--wide .chat-form textarea{min-height:72px;}}

/* Adresbijlagen als downloadkaarten */
.address-attachments{
    display:grid;
    gap:12px;
    margin-top:14px;
}
.address-attachment-card{
    display:flex;
    align-items:center;
    gap:16px;
    padding:16px 18px;
    border:1px solid var(--line, rgba(90,68,45,.16));
    border-radius:18px;
    background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,250,243,.88));
    box-shadow:0 10px 26px rgba(52,36,21,.07);
}
.address-attachment-card__icon{
    width:48px;
    height:48px;
    flex:0 0 48px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:#f1e4d2;
    font-size:1.45rem;
}
.address-attachment-card__body{
    min-width:0;
    flex:1;
}
.address-attachment-card__body h3{
    margin:0;
    font-size:1rem;
    line-height:1.25;
    color:var(--brand-dark, #2f2417);
}
.address-attachment-card__body p{
    margin:.25rem 0 0;
    color:var(--text, #362b21);
}
.address-attachment-card__meta{
    margin-top:4px;
    font-size:.9rem;
    color:var(--muted, #74685c);
    overflow-wrap:anywhere;
}
.address-attachment-card__download{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:10px 14px;
    border-radius:999px;
    background:var(--accent, #8a5a14);
    color:#fff;
    text-decoration:none;
    font-weight:800;
    box-shadow:0 8px 18px rgba(138,90,20,.18);
}
.address-attachment-card__download:hover,
.address-attachment-card__download:focus{
    color:#fff;
    transform:translateY(-1px);
    filter:brightness(.95);
}
@media(max-width:700px){
    .address-attachment-card{align-items:flex-start;gap:12px;flex-wrap:wrap;}
    .address-attachment-card__icon{width:42px;height:42px;flex-basis:42px;border-radius:14px;}
    .address-attachment-card__download{width:100%;}
}

/* Informatie: fotogalerij + dropdown navigatie */
.page--informatie .info-gallery{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  justify-content:flex-start;
  margin:0 0 24px;
}
.page--informatie .info-gallery__item{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  width:fit-content;
  max-width:100%;
  flex:0 0 auto;
  min-height:0;
  padding:10px;
  border-radius:16px;
  overflow:hidden;
  background:#eef2f5;
  border:1px solid var(--line);
  box-shadow:0 8px 24px rgba(31,41,51,.06);
  color:inherit;
  text-decoration:none;
  transition:transform .2s ease, box-shadow .2s ease;
}
.page--informatie .info-gallery__item:hover,
.page--informatie .info-gallery__item:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 14px 32px rgba(31,41,51,.12);
}
.page--informatie .info-gallery__image{
  display:block;
  width:auto;
  max-width:min(280px,100%);
  height:auto;
  max-height:360px;
  object-fit:contain;
  object-position:left center;
}
.page--informatie .info-gallery--single{
  display:block;
}
.page--informatie .info-gallery--single .info-gallery__item{
  max-width:100%;
  padding:12px;
}
.page--informatie .info-gallery--single .info-gallery__image{
  max-width:min(480px,100%);
  max-height:420px;
}
.page--informatie .info-page-nav{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px 14px;
    margin:0 0 22px;
    padding:14px 16px;
    border-radius:18px;
    background:#f7fbfc;
    border:1px solid var(--line);
}
.page--informatie .info-page-nav__label{
    margin:0;
    font-size:.82rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.1em;
    color:var(--brand-dark);
}
.page--informatie .info-page-nav__select{
    flex:1 1 280px;
    min-width:0;
    min-height:44px;
    padding:10px 14px;
    border-radius:14px;
    border:1px solid var(--line);
    background:#fff;
    color:var(--ink);
    font:inherit;
    font-weight:800;
    cursor:pointer;
}
.page--informatie .info-layout--no-image{
    display:block;
}
@media(max-width:800px){
    .page--informatie .info-gallery{
        gap:12px;
        margin:0 0 20px;
    }
    .page--informatie .info-gallery__item{
        min-height:0;
        padding:8px;
    }
    .page--informatie .info-gallery__image{
        max-width:100%;
        max-height:260px;
    }
    .page--informatie .info-gallery--single .info-gallery__image{
        max-height:300px;
    }
    .page--informatie .info-page-nav{
        flex-direction:row;
        align-items:center;
        gap:8px;
        margin:0 0 16px;
        padding:8px 10px;
    }
    .page--informatie .info-page-nav__label{
        flex:0 0 auto;
        font-size:.72rem;
    }
    .page--informatie .info-page-nav__select{
        flex:1 1 auto;
        width:auto;
        min-height:0;
        height:38px;
        padding:0 32px 0 10px;
        font-size:16px;
        line-height:1.2;
        -webkit-appearance:none;
        appearance:none;
        background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23194756' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
        background-repeat:no-repeat;
        background-position:right 10px center;
        background-size:12px 8px;
    }
}

.page--curiosa .subhero--curiosa .eyebrow,
.page--curiosa .subhero--curiosa .lead{
  display:none !important;
}
.page--curiosa .results-wrap.results-wrap--curiosa{
  width:min(var(--site-content-width),calc(100% - 2 * var(--page-gutter)));
  max-width:var(--site-content-width);
  margin-inline:auto;
  padding:32px 0 72px;
  box-sizing:border-box;
}
.page--curiosa .results-wrap--curiosa > *{
  width:100%;
  max-width:none;
  margin-inline:0;
}
.page--curiosa .stats-strip.curiosa-totals{
  width:100%;
  max-width:none;
  margin-inline:0;
  padding-inline:0;
}
.page--curiosa .curiosa-grid,
.page--curiosa .curiosa-lists{
  width:100%;
}
.curiosa-totals{margin-top:0;margin-bottom:28px;}
.curiosa-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-bottom:28px;
}
.curiosa-card{
  display:grid;
  grid-template-columns:minmax(140px,.9fr) minmax(0,1.1fr);
  gap:0;
  background:#fff;
  border:1px solid rgba(24,48,58,.11);
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 16px 38px rgba(31,41,51,.055);
  min-height:220px;
}
.curiosa-card__media{
  display:block;
  background:#edf7f9;
  min-height:220px;
}
.curiosa-card__media img{
  width:100%;
  height:100%;
  min-height:220px;
  object-fit:cover;
  display:block;
}
.curiosa-card__media--empty{
  display:grid;
  place-items:center;
  color:var(--brand);
}
.curiosa-card__media--empty svg{
  width:42px;
  height:42px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.curiosa-card__body{
  padding:22px 22px 20px;
  display:grid;
  align-content:start;
  gap:8px;
}
.curiosa-badge{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  padding:4px 10px;
  border-radius:999px;
  background:#edf7f9;
  color:var(--brand-dark);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.curiosa-card__body h2{
  margin:0;
  font-size:1.15rem;
  line-height:1.25;
  color:var(--brand-dark);
}
.curiosa-card__label{
  margin:0;
  font-size:1.05rem;
  font-weight:700;
  color:var(--ink);
}
.curiosa-card__detail{
  margin:0;
  color:var(--muted);
  line-height:1.45;
}
.curiosa-lists{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.curiosa-list-card h2{margin-top:0;}
.curiosa-rank-list{
  list-style:none;
  margin:16px 0 0;
  padding:0;
  display:grid;
  gap:12px;
}
.curiosa-rank-list li{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:14px;
  align-items:center;
  padding:12px 0;
  border-top:1px solid rgba(24,48,58,.08);
}
.curiosa-rank-list li:first-child{border-top:0;padding-top:0;}
.curiosa-rank-list .curiosa-rank{
  width:42px;
  height:42px;
  min-width:42px;
  flex-shrink:0;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#edf7f9;
  color:var(--brand-dark);
  font-weight:800;
  font-size:1.2rem;
  line-height:1;
  text-align:center;
  margin:0;
}
.curiosa-rank-list strong{color:var(--ink);}
.curiosa-rank-list li > div span{
  display:block;
  margin-top:2px;
  color:var(--muted);
  font-size:.92rem;
}
.curiosa-research{
  margin-bottom:22px;
  padding:16px 18px;
}
.curiosa-research__head{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:10px 18px;
  margin-bottom:14px;
}
.curiosa-research__head h2{
  margin:0;
  font-size:1.2rem;
}
.curiosa-research__summary{
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
  color:var(--muted);
  font-size:.9rem;
}
.curiosa-research__summary strong{
  color:var(--brand-dark);
  font-size:1rem;
}
.curiosa-research__panels{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.curiosa-research__panel h3{
  margin:0 0 12px;
  font-size:.95rem;
  color:var(--brand-dark);
  text-align:center;
}
.curiosa-donut-card--total{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:220px;
  padding:8px 12px 4px;
}
.curiosa-donut--total{
  width:148px;
  height:148px;
  margin:0 auto 12px;
}
.curiosa-donut--total::after{
  width:92px;
  height:92px;
}
.curiosa-donut--total .curiosa-donut__value{
  font-size:1.35rem;
}
.curiosa-donut-card--total figcaption{
  text-align:center;
  max-width:280px;
}
.curiosa-donut-card--total figcaption span{
  font-size:.86rem;
  line-height:1.45;
}
.curiosa-donut-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px 8px;
}
.curiosa-donut-card{
  margin:0;
  text-align:center;
}
.curiosa-donut{
  width:76px;
  height:76px;
  margin:0 auto 6px;
  border-radius:50%;
  display:grid;
  place-items:center;
  position:relative;
  box-shadow:inset 0 0 0 1px rgba(47,102,119,.1);
}
.curiosa-donut::after{
  content:"";
  position:absolute;
  width:48px;
  height:48px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 1px rgba(47,102,119,.06);
}
.curiosa-donut__value{
  position:relative;
  z-index:1;
  font-weight:800;
  color:var(--brand-dark);
  font-size:.78rem;
}
.curiosa-donut-card figcaption strong{
  display:block;
  color:var(--ink);
  font-size:.88rem;
}
.curiosa-donut-card figcaption span{
  display:block;
  margin-top:1px;
  color:var(--muted);
  font-size:.78rem;
}
.curiosa-research__occupations{
  margin-top:14px;
  border-top:1px solid rgba(47,102,119,.12);
  padding-top:10px;
}
.curiosa-research__occupations summary{
  cursor:pointer;
  font-weight:700;
  color:var(--brand-dark);
  list-style:none;
  display:flex;
  align-items:center;
  gap:8px;
  user-select:none;
}
.curiosa-research__occupations summary::-webkit-details-marker{display:none;}
.curiosa-research__occupations summary::before{
  content:"▸";
  color:var(--brand);
  transition:transform .15s ease;
}
.curiosa-research__occupations[open] summary::before{
  transform:rotate(90deg);
}
.curiosa-occupations-section h4{
  margin:12px 0 10px;
  font-size:.92rem;
  color:var(--brand-dark);
}
.curiosa-occupations-rare{
  margin-top:16px;
  border-top:1px solid rgba(47,102,119,.12);
  padding-top:12px;
}
.curiosa-occupations-rare summary{
  cursor:pointer;
  font-weight:700;
  color:var(--brand-dark);
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 12px;
  user-select:none;
}
.curiosa-occupations-rare summary::-webkit-details-marker{display:none;}
.curiosa-occupations-rare summary::before{
  content:"▸";
  color:var(--brand);
  transition:transform .15s ease;
}
.curiosa-occupations-rare[open] summary::before{
  transform:rotate(90deg);
}
.curiosa-occupations-rare__meta{
  font-weight:600;
  color:var(--muted);
  font-size:.84rem;
}
.curiosa-occupations-rare__intro{
  margin:10px 0 0;
  color:var(--muted);
  font-size:.88rem;
}
.curiosa-occupation-filter{
  display:block;
  margin:12px 0 10px;
}
.curiosa-occupation-filter__input{
  width:100%;
  max-width:420px;
  min-height:42px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  font:inherit;
}
.curiosa-occupation-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  max-height:340px;
  overflow-y:auto;
  padding:2px;
}
.curiosa-occupation-trigger{
  cursor:pointer;
  font:inherit;
}
.curiosa-bar-label.curiosa-occupation-trigger{
  background:none;
  border:0;
  padding:0;
  text-align:left;
}
.curiosa-bar-label.curiosa-occupation-trigger:hover,
.curiosa-bar-label.curiosa-occupation-trigger:focus-visible{
  color:var(--brand);
  text-decoration:underline;
}
.curiosa-occupation-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 11px;
  border-radius:999px;
  background:#eef6f8;
  border:1px solid rgba(47,102,119,.16);
  color:var(--ink);
  font-size:.86rem;
  line-height:1.2;
}
.curiosa-occupation-chip.curiosa-occupation-trigger:hover,
.curiosa-occupation-chip.curiosa-occupation-trigger:focus-visible{
  background:#dceef2;
  border-color:var(--brand);
  outline:2px solid rgba(47,102,119,.18);
  outline-offset:0;
}
.curiosa-occupation-chip.curiosa-occupation-trigger{
  cursor:pointer;
}
.curiosa-occupation-chip em{
  font-style:normal;
  font-weight:800;
  color:var(--brand);
  font-size:.78rem;
}
.curiosa-occupations-rare__empty{
  margin:10px 0 0;
  color:var(--muted);
  font-size:.88rem;
}
.curiosa-bar-chart{
  display:grid;
  gap:8px;
  margin-top:10px;
}
.curiosa-bar-row{
  display:grid;
  grid-template-columns:minmax(110px,.85fr) minmax(0,2fr) auto;
  gap:10px;
  align-items:center;
}
.curiosa-occupation-row{
  cursor:pointer;
  border-radius:10px;
  padding:6px 8px;
  margin:0 -8px;
  transition:background .15s ease;
}
.curiosa-occupation-row:hover,
.curiosa-occupation-row:focus-visible{
  background:#eef6f8;
  outline:2px solid rgba(47,102,119,.18);
  outline-offset:0;
}
.curiosa-occupation-row:hover .curiosa-bar-label,
.curiosa-occupation-row:focus-visible .curiosa-bar-label{
  color:var(--brand);
  text-decoration:underline;
}
.curiosa-bar-label{
  font-weight:600;
  color:var(--ink);
  font-size:.88rem;
  pointer-events:none;
}
.curiosa-bar-track{
  height:10px;
  border-radius:999px;
  background:#e8f1f3;
  overflow:hidden;
}
.curiosa-bar-track span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#7eb5c4 0%, var(--brand) 100%);
}
.curiosa-bar-count{
  min-width:2rem;
  text-align:right;
  color:var(--muted);
  font-size:.82rem;
  font-variant-numeric:tabular-nums;
}
.occupation-people-list{
  display:grid;
  gap:14px;
  margin-top:16px;
}
.occupation-person-card{
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px 16px;
  background:#fafcfd;
}
.occupation-person-card__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:10px;
}
.occupation-person-card__head h3{
  margin:0;
  font-size:1rem;
}
.occupation-person-card__head p{
  margin:4px 0 0;
  font-size:.88rem;
}
.occupation-person-card__count{
  flex-shrink:0;
  font-size:.82rem;
  font-weight:700;
  color:var(--brand);
}
.occupation-people-modal__note{
  margin:16px 0 0;
  font-size:.88rem;
}
.occupation-person-card .table-scroll table{
  width:100%;
  min-width:28rem;
}
.occupation-person-card .table-scroll{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.occupation-person-card td.occupation-person-card__action{
  text-align:right;
  min-width:8.5rem;
  white-space:nowrap;
  vertical-align:middle;
}
.occupation-address-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 14px;
  border-radius:999px;
  background:var(--brand);
  color:#fff !important;
  font-size:.82rem;
  font-weight:800;
  line-height:1.2;
  text-decoration:none !important;
  white-space:nowrap;
  box-shadow:0 4px 12px rgba(47,102,119,.18);
  transition:background .15s ease, transform .15s ease, box-shadow .15s ease;
}
.occupation-address-btn:hover,
.occupation-address-btn:focus-visible{
  background:var(--brand-dark);
  color:#fff !important;
  transform:translateY(-1px);
  box-shadow:0 6px 16px rgba(47,102,119,.24);
  outline:none;
}
@media(max-width:980px){
  .curiosa-grid,.curiosa-lists{grid-template-columns:1fr;}
  .curiosa-card{grid-template-columns:1fr;}
  .curiosa-card__media,.curiosa-card__media img{min-height:200px;}
  .curiosa-research__panels{grid-template-columns:1fr;}
  .curiosa-donut-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:680px){
  .curiosa-research{padding:14px;}
  .curiosa-donut--total{width:128px;height:128px;}
  .curiosa-donut--total::after{width:80px;height:80px;}
  .curiosa-donut--total .curiosa-donut__value{font-size:1.15rem;}
  .curiosa-bar-row{grid-template-columns:1fr;gap:4px;}
  .curiosa-bar-count{text-align:left;}
  .occupation-person-card td.occupation-person-card__action{
    min-width:0;
    padding-top:8px;
  }
  .occupation-address-btn{
    width:auto;
    min-height:36px;
  }
}
@media(max-width:800px){
  .page--curiosa .results-wrap.results-wrap--curiosa{padding-top:28px;padding-bottom:56px;}
}

.page--member .subhero--member{
  /* zelfde als .page-header */
}
.page--member .subhero--member .eyebrow,
.page--member .subhero--member .eyebrow a,
.page--member .subhero--member .eyebrow a:visited,
.page--member .subhero--member .eyebrow a:hover,
.page--member .subhero--member .lead{
  display:none !important;
}
.results-wrap--member{
  width:100%;
  max-width:none;
  margin:0 0 48px;
  padding:32px var(--page-gutter) 0;
  box-sizing:border-box;
}
.results-wrap--member > *{
  width:min(var(--site-content-width),100%);
  max-width:var(--site-content-width);
  margin-inline:auto;
}
.member-auth-card,
.member-settings-card{
  width:100%;
}
.member-form{
  display:grid;
  gap:14px;
}
.member-form label{
  display:grid;
  gap:6px;
  font-weight:600;
}
.member-form input:not([type="checkbox"]):not([type="radio"]),
.member-form textarea,
.member-form select{
  width:100%;
  border:1px solid rgba(24,48,58,.14);
  border-radius:14px;
  padding:12px 14px;
  font:inherit;
  background:#fff;
}
.member-checkbox{
  display:flex !important;
  align-items:flex-start;
  gap:10px;
  font-weight:500 !important;
}
.member-checkbox input[type="checkbox"]{
  width:auto;
  flex:0 0 auto;
  margin-top:3px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.member-auth-intro{
  width:100%;
  margin-bottom:20px;
}
.member-auth-intro h2,
.member-auth-card__title{
  margin:0 0 14px;
  font-size:1.15rem;
  color:var(--brand-dark);
}
.member-benefits-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
}
.member-benefits-list li{
  position:relative;
  padding-left:22px;
  color:var(--ink);
  line-height:1.45;
}
.member-benefits-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--accent);
}
.member-benefits-list li.is-soon{
  color:var(--muted);
}
.member-benefits-list li.is-soon::before{
  background:var(--line);
}
.member-benefits-list em{
  font-style:normal;
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:var(--brand);
  margin-left:6px;
}
.member-auth-switch{
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid rgba(24,48,58,.1);
  display:grid;
  gap:10px;
}
.member-auth-switch p{
  margin:0;
  color:var(--muted);
  font-size:.94rem;
}
.member-auth-switch .button-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.member-account-actions{
  grid-template-columns:1fr;
}
@media(min-width:640px){
  .member-account-actions--admin{
    grid-template-columns:1fr 1fr;
  }
}
.member-settings-card h2{
  margin:0 0 14px;
  font-size:1.15rem;
  color:var(--brand-dark);
}
.member-form-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:6px;
}
.member-hub-intro{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px 32px;
  align-items:start;
  margin-bottom:22px;
  padding:24px 26px;
}
.member-hub-intro__label{
  margin:0 0 4px;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--brand);
}
.member-hub-intro__email{
  margin:0 0 12px;
  font-size:1.08rem;
  font-weight:700;
  color:var(--brand-dark);
  word-break:break-word;
}
.member-hub-intro__text{
  margin:0;
  color:var(--muted);
  font-size:.96rem;
  line-height:1.6;
  max-width:760px;
}
.member-hub-intro__meta{
  display:grid;
  gap:12px;
  margin:0;
  min-width:min(220px,100%);
}
.member-hub-intro__meta div{
  display:grid;
  gap:3px;
}
.member-hub-intro__meta dt{
  margin:0;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--muted);
}
.member-hub-intro__meta dd{
  margin:0;
  font-size:.94rem;
  font-weight:700;
  color:var(--ink);
}
.member-hub-toolbar{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
  margin-bottom:28px;
}
.member-hub-toolbar__btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:10px 18px;
  border-radius:999px;
  border:1px solid rgba(24,48,58,.14);
  background:#fff;
  color:var(--brand-dark);
  font:inherit;
  font-weight:700;
  font-size:.92rem;
  text-decoration:none;
  box-shadow:0 8px 22px rgba(31,41,51,.05);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}
.member-hub-toolbar__btn:hover{
  transform:translateY(-1px);
  border-color:rgba(47,138,163,.35);
  box-shadow:0 12px 28px rgba(31,41,51,.08);
}
.member-hub-toolbar__btn--primary{
  background:var(--brand-dark);
  border-color:var(--brand-dark);
  color:#fff;
}
.member-hub-toolbar__btn--primary:hover{
  background:#163844;
  border-color:#163844;
  color:#fff;
}
.member-hub-toolbar__btn--ghost{
  background:transparent;
  box-shadow:none;
}
.member-hub-toolbar__btn--ghost:hover{
  background:#fff;
  box-shadow:0 8px 22px rgba(31,41,51,.05);
}
.member-hub-toolbar__icon{
  display:inline-flex;
  width:1.15rem;
  height:1.15rem;
}
.member-hub-toolbar__icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.member-hub-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin-bottom:24px;
}
.member-hub-card{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:16px;
  align-items:center;
  padding:22px 52px 22px 20px;
  border-radius:22px;
  border:1px solid rgba(24,48,58,.1);
  background:#fff;
  box-shadow:0 14px 36px rgba(31,41,51,.06);
  color:inherit;
  text-decoration:none;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.member-hub-card__badge{
  position:absolute;
  top:14px;
  right:14px;
  min-width:1.85rem;
  height:1.85rem;
  padding:0 7px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.78rem;
  font-weight:800;
  line-height:1;
  background:var(--brand-dark);
  color:#fff !important;
  box-shadow:0 6px 16px rgba(25,71,86,.22);
}
.member-hub-card__badge--empty{
  background:#ebe6de;
  color:#8a8175 !important;
  box-shadow:none;
}
.member-hub-card__badge--pending{
  background:#c9852e;
  color:#fff !important;
  box-shadow:0 6px 16px rgba(201,133,46,.28);
}
.member-hub-card:hover{
  transform:translateY(-3px);
  border-color:rgba(47,138,163,.32);
  box-shadow:0 22px 46px rgba(31,41,51,.1);
}
.member-hub-card__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:50px;
  height:50px;
  border-radius:16px;
  font-size:1.35rem;
  flex:0 0 auto;
}
.member-hub-card__icon svg{
  width:1.15em;
  height:1.15em;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.member-hub-card__body{
  display:grid;
  gap:5px;
  min-width:0;
}
.member-hub-card strong{
  font-size:1.06rem;
  color:var(--brand-dark);
  line-height:1.25;
}
.member-hub-card__body > span{
  color:var(--muted);
  font-size:.92rem;
  line-height:1.45;
}
.member-hub-card--places .member-hub-card__icon{
  background:#edf7f9;
  color:#2f6677;
}
.member-hub-card--family .member-hub-card__icon{
  background:#fbf2e4;
  color:#9a6b1f;
}
.member-hub-card--walks .member-hub-card__icon{
  background:#edf6ef;
  color:#2f6b4a;
}
.member-hub-card--timeline .member-hub-card__icon{
  background:#f1eef8;
  color:#5b4d8a;
}
.member-hub-card--photos .member-hub-card__icon{
  background:#fff3e8;
  color:#b96a24;
}
@media(min-width:900px){
  .member-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
.member-hub-card--soon{opacity:.88;}
.member-hub-card--soon em{
  font-style:normal;
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--brand);
}
.member-filter-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:22px;
}
.member-filter-nav a{
  padding:8px 14px;
  border-radius:999px;
  border:1px solid rgba(24,48,58,.12);
  background:#fff;
  text-decoration:none;
  color:var(--ink);
  font-weight:600;
  font-size:.92rem;
}
.member-filter-nav a:visited{
  color:var(--ink);
}
.member-filter-nav a.is-active{
  background:#edf7f9;
  border-color:rgba(47,138,163,.35);
  color:var(--brand-dark);
}
.member-place-group{margin-bottom:28px;}
.member-place-group h2{margin:0 0 14px;}
.member-place-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.member-place-card{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:14px;
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(24,48,58,.11);
  background:#fff;
  transition:border-color .18s ease, box-shadow .18s ease;
}
.member-place-card:has(h3 a:hover),
.member-place-card:has(.member-place-card__photo:hover){
  border-color:rgba(47,102,119,.28);
  box-shadow:0 10px 24px rgba(31,41,51,.06);
}
.member-place-card__photo{
  display:block;
  text-decoration:none;
  border-radius:12px;
  overflow:hidden;
}
.member-place-card__photo img{
  width:120px;
  height:90px;
  object-fit:cover;
  border-radius:12px;
  display:block;
  transition:transform .2s ease;
}
.member-place-card__photo:hover img{
  transform:scale(1.03);
}
.member-place-card__photo--empty{
  display:grid;
  place-items:center;
  width:120px;
  height:90px;
  background:#e9e1d5;
  border:1px solid var(--line);
}
.member-place-card__photo--empty:hover{
  background:#e2d9cb;
}
.member-place-card__placeholder{
  color:var(--brand-dark);
  font-family:Fraunces,Georgia,serif;
  font-weight:800;
  font-size:1.6rem;
  line-height:1;
}
.member-place-card__body{
  display:grid;
  align-content:start;
  gap:4px;
  min-width:0;
}
.member-place-card h3{
  margin:0 0 6px;
  font-size:1.05rem;
}
.member-place-card h3 a,
.member-place-card h3 a:visited{
  color:var(--brand-dark);
  text-decoration:none;
}
.member-place-card h3 a:hover{
  color:var(--brand);
  text-decoration:underline;
}
.member-place-card p{
  margin:0 0 8px;
  color:var(--muted);
  font-size:.94rem;
  line-height:1.45;
}
.member-address-tools{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(24,48,58,.1);
}
.member-address-tools h3{margin:0 0 12px;font-size:1rem;}
.member-address-tools > p > a{
  color:var(--brand-dark);
  font-weight:700;
  text-decoration:none;
}
.member-address-tools > p > a:hover{
  color:var(--brand);
  text-decoration:underline;
}
.member-login-promo .member-login-hint{
  margin:0 0 14px;
  line-height:1.5;
}
.member-login-promo__actions{
  display:grid;
  gap:8px;
}
.member-favorite-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.member-fav-btn{
  border:1px solid rgba(24,48,58,.14);
  background:#fff;
  border-radius:999px;
  padding:7px 12px;
  font:inherit;
  font-size:.82rem;
  font-weight:700;
  cursor:pointer;
}
.member-fav-btn.is-active{
  background:#edf7f9;
  border-color:rgba(47,138,163,.45);
  color:var(--brand-dark);
}
.member-tool-status{
  font-size:.92rem;
  color:var(--muted);
}
.member-login-hint{
  font-size:.92rem;
  color:var(--muted);
}
.member-memory-list{
  list-style:none;
  margin:0 0 18px;
  padding:0;
  display:grid;
  gap:12px;
}
.member-memory-list li{
  padding:12px 0;
  border-top:1px solid rgba(24,48,58,.08);
}
.member-unfavorite{
  justify-self:start;
  margin-top:8px;
  border:1px solid rgba(24,48,58,.12);
  background:#fff;
  color:var(--muted);
  font:inherit;
  font-size:.82rem;
  font-weight:600;
  cursor:pointer;
  padding:6px 12px;
  border-radius:999px;
  transition:color .15s ease, border-color .15s ease, background .15s ease;
}
.member-unfavorite:hover{
  color:#a33a2c;
  border-color:rgba(163,58,44,.25);
  background:#fff8f6;
}
.admin-userbar{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
  padding:10px 16px;
  margin:-8px 0 8px;
  border:1px solid var(--admin-border);
  border-radius:14px;
  background:#fff;
  font-size:.92rem;
}
.admin-userbar a{font-weight:700;color:var(--admin-accent-2);text-decoration:none;}
.admin-grid-2{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}
@media(max-width:980px){
  .member-hub-grid,.member-place-grid{grid-template-columns:1fr;}
  .member-hub-intro{grid-template-columns:1fr;}
  .member-hub-toolbar{justify-content:stretch;}
  .member-hub-toolbar__btn{flex:1 1 auto;justify-content:center;}
  .member-place-card{grid-template-columns:1fr;}
}
@media(max-width:800px){
  .results-wrap--member{padding:28px 18px 0;}
}
.member-form .button-link,
.member-form button.button-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  margin-top:4px;
  border:0;
  cursor:pointer;
}
.member-auth-card .status--error,
.member-settings-card .status--error{
  color:#a33a2c;
  background:#fff0ed;
  border:1px solid rgba(163,58,44,.18);
  border-radius:14px;
  padding:12px 14px;
}
.member-auth-card .hint,
.member-settings-card .hint{
  margin:0;
  color:var(--muted);
  font-size:.92rem;
}

.member-family-tree-card h2,
.member-family-editor h2,
.member-family-extra h2{
  margin:0 0 10px;
  font-size:1.15rem;
  color:var(--brand-dark);
}
.member-family-intro{
  margin:0 0 22px;
  color:var(--muted);
  max-width:760px;
}
.member-family-tree{
  display:grid;
  gap:0;
  padding:8px 0 4px;
}
.member-family-tree__row{
  display:grid;
  gap:12px;
  justify-content:center;
}
.member-family-tree__row--grandparents{
  grid-template-columns:repeat(4,minmax(0,1fr));
  max-width:980px;
  margin:0 auto;
}
.member-family-tree__row--parents{
  grid-template-columns:repeat(2,minmax(0,180px));
  max-width:420px;
  margin:0 auto;
}
.member-family-tree__row--self{
  grid-template-columns:minmax(0,220px);
  margin:0 auto;
}
.member-family-tree__connector{
  height:28px;
  margin:0 auto;
  position:relative;
}
.member-family-tree__connector--gp{
  width:min(72%,760px);
  border-top:2px solid rgba(47,102,119,.18);
}
.member-family-tree__connector--gp::before,
.member-family-tree__connector--gp::after,
.member-family-tree__connector--parents::before{
  content:"";
  position:absolute;
  top:0;
  width:2px;
  height:28px;
  background:rgba(47,102,119,.18);
}
.member-family-tree__connector--gp::before{left:25%;}
.member-family-tree__connector--gp::after{right:25%;}
.member-family-tree__connector--parents{
  width:2px;
  background:rgba(47,102,119,.18);
}
.member-family-node{
  display:grid;
  gap:4px;
  padding:14px 12px;
  min-height:108px;
  border-radius:18px;
  border:1px dashed rgba(24,48,58,.18);
  background:#fff;
  text-decoration:none;
  color:inherit;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.member-family-node:hover{
  border-color:rgba(47,102,119,.35);
  box-shadow:0 10px 24px rgba(31,41,51,.06);
  transform:translateY(-1px);
}
.member-family-node--filled{
  border-style:solid;
  border-color:rgba(24,48,58,.11);
}
.member-family-node.is-active{
  border-color:rgba(47,102,119,.45);
  box-shadow:0 0 0 3px rgba(47,102,119,.12);
}
.member-family-node__role{
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--brand);
}
.member-family-node__name{
  font-size:.98rem;
  color:var(--brand-dark);
  line-height:1.25;
}
.member-family-node__years,
.member-family-node__meta{
  font-size:.82rem;
  color:var(--muted);
}
.member-family-node__cta{
  align-self:center;
  font-size:.92rem;
  font-weight:700;
  color:var(--brand);
}
.member-family-editor{
  margin-top:20px;
}
.member-family-editor__head{
  margin-bottom:18px;
}
.member-family-editor__subtitle{
  margin:0;
  color:var(--muted);
  font-size:.94rem;
}
.member-form-grid-2{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.member-family-addresses{
  margin-top:24px;
  padding-top:22px;
  border-top:1px solid rgba(24,48,58,.1);
}
.member-family-addresses h3{
  margin:0 0 12px;
  font-size:1rem;
}
.member-family-addresses__intro{
  margin:0 0 16px;
}
.member-family-badge{
  display:inline-flex;
  align-items:center;
  padding:3px 8px;
  border-radius:999px;
  background:#f6f0e7;
  border:1px solid rgba(185,131,60,.25);
  color:#7a5b2e;
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
  white-space:nowrap;
}
.member-family-address-list__title{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.member-family-address-list__custom{
  color:var(--brand-dark);
  font-weight:700;
}
.member-address-search__empty{
  margin:0;
  padding:12px 14px;
  font-size:.92rem;
  color:var(--muted);
  line-height:1.45;
}
.member-family-link-hint{
  margin:-4px 0 0;
}
.member-suggestion-tag{
  color:var(--brand) !important;
  font-weight:700 !important;
}
.member-family-address-list{
  list-style:none;
  margin:0 0 18px;
  padding:0;
  display:grid;
  gap:10px;
}
.member-family-address-list li{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border:1px solid rgba(24,48,58,.1);
  border-radius:14px;
  background:#fff;
}
.member-family-address-list__main{
  display:grid;
  gap:4px;
  min-width:0;
}
.member-family-address-list__main a,
.member-family-address-list__main a:visited{
  color:var(--brand-dark);
  font-weight:700;
  text-decoration:none;
}
.member-family-address-list__main a:hover{
  color:var(--brand);
  text-decoration:underline;
}
.member-family-address-list__main span{
  color:var(--muted);
  font-size:.9rem;
}
.member-family-inline-form{margin:0;}
.member-family-link-form{margin-top:8px;}
.member-address-search{
  position:relative;
}
.member-address-search .address-suggestions{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 6px);
  z-index:5;
  margin-top:0;
}
.member-family-delete-form{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(24,48,58,.1);
}
.member-family-extra{
  margin-top:20px;
}
.member-place-card__photo--family .member-place-card__placeholder{
  font-size:1.8rem;
}
@media(max-width:900px){
  .member-family-tree__row--grandparents{
    grid-template-columns:repeat(2,minmax(0,1fr));
    max-width:100%;
  }
  .member-family-tree__connector--gp{
    width:88%;
  }
  .member-family-tree__connector--gp::before{left:24%;}
  .member-family-tree__connector--gp::after{right:24%;}
}
@media(max-width:640px){
  .member-form-grid-2{grid-template-columns:1fr;}
  .member-family-address-list li{
    flex-direction:column;
    align-items:stretch;
  }
}

.member-walk-create-card h2,
.member-walk-list h2{
  margin:0 0 10px;
  font-size:1.15rem;
  color:var(--brand-dark);
}
.member-walk-create-form{
  max-width:560px;
}
.member-walk-list{
  display:grid;
  gap:14px;
}
.member-walk-card{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px;
  border-radius:18px;
  border:1px solid rgba(24,48,58,.11);
  background:#fff;
}
.member-walk-card h3{
  margin:0 0 6px;
  font-size:1.05rem;
}
.member-walk-card h3 a,
.member-walk-card h3 a:visited{
  color:var(--brand-dark);
  text-decoration:none;
}
.member-walk-card h3 a:hover{
  color:var(--brand);
  text-decoration:underline;
}
.member-walk-card p{
  margin:0;
  color:var(--muted);
}
.member-walk-card__meta{
  margin-top:8px !important;
  font-size:.88rem;
}
.member-walk-card__actions{
  display:grid;
  gap:8px;
  align-content:start;
}
.member-walk-page{
  padding-top:24px;
}
.member-walk-input,
.member-walk-textarea{
  width:100%;
  border:1px solid rgba(24,48,58,.14);
  border-radius:14px;
  padding:12px 14px;
  font:inherit;
  background:#fff;
}
.member-walk-textarea{
  resize:vertical;
  min-height:88px;
}
.member-walk-quick-actions{
  margin:16px 0;
}
.member-walk-maps-actions{
  margin-top:28px;
  padding-top:20px;
  border-top:1px solid rgba(24,48,58,.1);
}
.member-walk-stop-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.member-walk-stop-list .member-walk-stop-card{
  padding:16px 18px;
  gap:14px;
}
.member-walk-stop-list .walk-stop-head{
  align-items:flex-start;
}
.member-walk-stop-list .walk-stop-head > div p{
  margin:4px 0 0;
  font-size:.9rem;
  color:var(--muted);
}
.member-walk-stop-list .walk-stop-head h3{
  margin:0;
  font-size:1rem;
  line-height:1.3;
  color:var(--brand-dark);
}
.member-walk-stop-list .walk-stop-number{
  width:34px;
  height:34px;
  font-size:.92rem;
}
.member-walk-stop-list .walk-stop-explanation{
  margin:8px 0 0;
  font-size:.9rem;
  color:var(--muted);
}
.member-walk-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:6px 12px;
  border-radius:999px;
  border:1px solid rgba(24,48,58,.14);
  background:#fff;
  color:var(--brand-dark);
  font:inherit;
  font-size:.78rem;
  font-weight:600;
  line-height:1.2;
  text-decoration:none;
  cursor:pointer;
  white-space:nowrap;
  transition:background .15s ease,border-color .15s ease,color .15s ease;
}
.member-walk-btn:hover{
  background:#edf7f9;
  border-color:rgba(47,102,119,.32);
  color:var(--brand-dark);
  text-decoration:none;
}
.member-walk-btn--danger{
  color:var(--muted);
}
.member-walk-btn--danger:hover{
  color:#a33a2c;
  background:#fff8f6;
  border-color:rgba(163,58,44,.22);
}
.member-walk-empty{
  list-style:none;
  margin:0;
  padding:18px 0;
  color:var(--muted);
}
.member-walk-stop-card .member-family-badge{
  font-size:.68rem;
  vertical-align:middle;
}
@media(max-width:900px){
  .member-walk-card{
    flex-direction:column;
  }
}

/* Persoonlijke tijdlijn */
.member-timeline-editor--compact{
  margin-bottom:18px;
}
.member-timeline-editor__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.member-timeline-editor__head h2{
  margin:0;
  font-size:1.05rem;
}
.member-form--compact{
  gap:10px;
}
.member-form--compact label{
  gap:4px;
  font-size:.88rem;
  font-weight:600;
}
.member-form--compact label small{
  font-weight:500;
  color:var(--muted);
}
.member-form--compact input:not([type="checkbox"]):not([type="radio"]),
.member-form--compact textarea,
.member-form--compact select{
  padding:8px 10px;
  border-radius:10px;
  font-size:.92rem;
}
.member-form--compact textarea{
  min-height:64px;
  resize:vertical;
}
.member-timeline-form__row{
  display:grid;
  gap:10px;
}
.member-timeline-form__row--3{
  grid-template-columns:92px minmax(140px,.9fr) minmax(0,1.4fr);
}
.member-timeline-form__row--2{
  grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);
}
.member-timeline-form__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}
.member-timeline-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,340px);
  gap:20px;
  align-items:start;
}
.member-timeline-card h2,
.member-timeline-register h2{
  margin:0;
  font-size:1.15rem;
}
.member-timeline-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:18px;
}
.member-timeline-card__head .hint{
  margin:4px 0 0;
}
.member-timeline-empty{
  margin:0;
  color:var(--muted);
}
.member-timeline.visual-timeline{
  margin:0;
  padding:8px 0 0;
  border:0;
  background:linear-gradient(180deg,#fffaf1 0%,#fff 100%);
  border-radius:18px;
  border:1px solid rgba(24,48,58,.08);
}
.member-timeline.visual-timeline ol{
  padding:18px 18px 8px;
}
.member-timeline.visual-timeline li{
  grid-template-columns:72px minmax(0,1fr);
  gap:14px;
  padding-bottom:1.25rem;
}
.member-timeline.visual-timeline li:before{
  left:61px;
  top:18px;
  width:12px;
  height:12px;
  box-shadow:0 0 0 5px #e6f4f7;
}
.member-timeline.visual-timeline li:after{
  left:66px;
  top:32px;
  border-left-color:#c5dde3;
}
.member-timeline.visual-timeline .vt-year{
  font-size:1.05rem;
  line-height:1.2;
  padding-top:10px;
  color:var(--brand-dark);
}
.member-timeline-item__card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:stretch;
  border:1px solid rgba(24,48,58,.1);
  border-radius:16px;
  padding:12px 14px;
  background:#fff;
  box-shadow:0 8px 24px rgba(24,48,58,.05);
  transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.member-timeline-item__card:hover{
  border-color:rgba(47,102,119,.22);
  box-shadow:0 10px 28px rgba(24,48,58,.08);
}
.member-timeline-item.is-active .member-timeline-item__card{
  border-color:rgba(47,102,119,.45);
  box-shadow:0 0 0 3px rgba(47,102,119,.08);
}
.member-timeline-item__main{
  min-width:0;
}
.member-timeline-item__top{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px 12px;
  margin-bottom:4px;
}
.member-timeline-item__type{
  display:inline-block;
  margin:0 0 3px;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  color:var(--brand);
}
.member-timeline-item__title{
  display:block;
  color:var(--ink);
  font-size:1rem;
  line-height:1.35;
}
.member-timeline-item__body{
  margin:6px 0 0;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.45;
}
.member-timeline-item__register{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 10px;
  margin-top:10px;
  padding-top:10px;
  border-top:1px dashed rgba(24,48,58,.1);
  font-size:.84rem;
}
.member-timeline-item__register a{
  color:var(--brand-dark);
  font-weight:700;
  text-decoration:none;
}
.member-timeline-item__register a:hover{
  color:var(--brand);
  text-decoration:underline;
}
.member-timeline-item__register span{
  color:var(--muted);
}
.member-timeline-item__photo{
  flex:0 0 auto;
  width:88px;
  min-height:72px;
  border-radius:12px;
  overflow:hidden;
  align-self:center;
  background:#edf4f6;
  border:1px solid rgba(24,48,58,.08);
}
.member-timeline-item__photo img{
  display:block;
  width:100%;
  height:100%;
  min-height:72px;
  object-fit:cover;
}
.member-timeline-item__photo--empty{
  display:grid;
  place-items:center;
  color:var(--brand);
  font-weight:800;
  text-decoration:none;
}
.member-timeline-item--move:before{background:#2f6677;box-shadow:0 0 0 5px rgba(47,102,119,.14)!important}
.member-timeline-item--school:before{background:#6b4f9a;box-shadow:0 0 0 5px rgba(107,79,154,.14)!important}
.member-timeline-item--work:before{background:#8a5a2b;box-shadow:0 0 0 5px rgba(138,90,43,.14)!important}
.member-timeline-item--family:before{background:#a33a2c;box-shadow:0 0 0 5px rgba(163,58,44,.14)!important}
.member-timeline-item--memory:before{background:#3d7a4a;box-shadow:0 0 0 5px rgba(61,122,74,.14)!important}
.member-timeline-item--birth:before{background:var(--brand-dark);box-shadow:0 0 0 5px rgba(24,48,58,.12)!important}
.member-timeline-item--move .member-timeline-item__type{color:#2f6677}
.member-timeline-item--school .member-timeline-item__type{color:#6b4f9a}
.member-timeline-item--work .member-timeline-item__type{color:#8a5a2b}
.member-timeline-item--family .member-timeline-item__type{color:#a33a2c}
.member-timeline-item--memory .member-timeline-item__type{color:#3d7a4a}
.member-timeline-item--birth .member-timeline-item__type{color:var(--brand-dark)}
.member-timeline-sidebar{
  position:sticky;
  top:18px;
}
.member-timeline-register h2{
  margin-bottom:12px;
}
.member-timeline-register-list{
  display:grid;
  gap:14px;
}
.member-timeline-register-card{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:12px;
  padding-top:14px;
  border-top:1px solid rgba(24,48,58,.08);
}
.member-timeline-register-card:first-child{
  padding-top:0;
  border-top:0;
}
.member-timeline-register-card__photo{
  display:block;
  width:92px;
  height:92px;
  border-radius:14px;
  overflow:hidden;
  background:#edf4f6;
  border:1px solid rgba(24,48,58,.08);
}
.member-timeline-register-card__photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.member-timeline-register-card__photo--empty{
  display:grid;
  place-items:center;
  color:var(--brand);
  font-weight:800;
  text-decoration:none;
}
.member-timeline-register-card__body{
  min-width:0;
}
.member-timeline-register-card h3{
  margin:0 0 4px;
  font-size:.98rem;
  line-height:1.3;
}
.member-timeline-register-card h3 a,
.member-timeline-register-card h3 a:visited{
  color:var(--brand-dark);
  text-decoration:none;
}
.member-timeline-register-card h3 a:hover{
  color:var(--brand);
  text-decoration:underline;
}
.member-timeline-register-card__meta{
  margin:0;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.4;
}
.member-timeline-register-card__facts{
  display:grid;
  gap:6px;
  margin:8px 0 0;
}
.member-timeline-register-card__facts div{
  display:grid;
  gap:1px;
}
.member-timeline-register-card__facts dt{
  margin:0;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--muted);
}
.member-timeline-register-card__facts dd{
  margin:0;
  font-size:.84rem;
  color:var(--ink);
}
.member-timeline-register-card__badges{
  margin-top:8px;
}
.member-timeline-register-card__badges .address-badge img{
  width:18px;
  height:18px;
}
.member-timeline-register-card__thumbs{
  display:flex;
  gap:6px;
  margin-top:8px;
}
.member-timeline-register-card__thumbs a{
  display:block;
  width:42px;
  height:42px;
  border-radius:8px;
  overflow:hidden;
  border:1px solid rgba(24,48,58,.08);
}
.member-timeline-register-card__thumbs img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
@media(max-width:960px){
  .member-timeline-layout{
    grid-template-columns:1fr;
  }
  .member-timeline-sidebar{
    position:static;
  }
  .member-timeline-form__row--3,
  .member-timeline-form__row--2{
    grid-template-columns:1fr;
  }
}
@media(max-width:640px){
  .member-timeline-item__card{
    grid-template-columns:1fr;
  }
  .member-timeline-item__photo{
    width:100%;
    min-height:120px;
  }
  .member-timeline-register-card{
    grid-template-columns:1fr;
  }
  .member-timeline-register-card__photo{
    width:100%;
    height:140px;
  }
}

/* Beeldmateriaal insturen */
.member-photo-submit-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.95fr);
  gap:20px;
  align-items:start;
}
.member-photo-submit-form-card h2,
.member-photo-submit-list-card h2{
  margin:0 0 8px;
  font-size:1.15rem;
}
.member-photo-submit-form__row{
  display:grid;
  gap:10px;
}
.member-photo-submit-form__row--2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.member-photo-submit-form__row--address-year{
  display:flex;
  flex-wrap:nowrap;
  align-items:flex-end;
  gap:10px;
}
.member-photo-submit-form__row--address-year label:first-child{
  flex:1 1 auto;
  min-width:0;
}
.member-photo-submit-field--year{
  flex:0 0 108px;
  width:108px;
}
.member-photo-submit-field--year input{
  text-align:center;
  padding-left:8px;
  padding-right:8px;
}
.member-photo-file-label input[type="file"]{
  padding:8px 0;
  border:0;
  background:transparent;
}
.member-photo-file-area{
  margin-top:8px;
}
.member-photo-file-placeholder{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border:1px dashed rgba(24,48,58,.18);
  border-radius:12px;
  background:#fffaf1;
  color:var(--muted);
  font-size:.88rem;
  line-height:1.4;
}
.member-photo-file-placeholder[hidden],
.member-photo-file-preview[hidden]{
  display:none !important;
}
.member-photo-file-placeholder__icon{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:72px;
  height:72px;
  border-radius:10px;
  background:#edf4f6;
  color:var(--brand);
  font-weight:800;
  font-size:.95rem;
}
.member-photo-file-preview{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px;
  border:1px solid rgba(24,48,58,.1);
  border-radius:12px;
  background:#fffaf1;
}
.member-photo-file-preview img{
  width:72px;
  height:72px;
  object-fit:cover;
  border-radius:10px;
  border:1px solid rgba(24,48,58,.08);
}
.member-photo-file-preview span{
  color:var(--muted);
  font-size:.88rem;
  word-break:break-word;
}
.member-photo-submit-list__head{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:14px;
}
.member-photo-submit-list{
  display:grid;
  gap:14px;
}
.member-photo-submit-item{
  display:grid;
  grid-template-columns:84px minmax(0,1fr) auto;
  gap:12px;
  align-items:start;
  padding-top:14px;
  border-top:1px solid rgba(24,48,58,.08);
}
.member-photo-submit-item:first-child{
  padding-top:0;
  border-top:0;
}
.member-photo-submit-item__thumb{
  display:block;
  width:84px;
  height:84px;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(24,48,58,.08);
  background:#edf4f6;
}
.member-photo-submit-item__thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.member-photo-submit-item__top{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px 12px;
  margin-bottom:4px;
}
.member-photo-submit-item__top strong{
  color:var(--brand-dark);
  line-height:1.35;
}
.member-photo-submit-item__meta{
  margin:0;
  color:var(--muted);
  font-size:.84rem;
}
.member-photo-submit-item__body p{
  margin:6px 0 0;
  font-size:.9rem;
  color:var(--muted);
}
.member-photo-submit-item__body a{
  color:var(--brand-dark);
  font-weight:700;
  text-decoration:none;
}
.member-photo-submit-item__body a:hover{
  color:var(--brand);
  text-decoration:underline;
}
.member-photo-submit-item__reject{
  color:#a33a2c !important;
}
.member-photo-status{
  display:inline-flex;
  align-items:center;
  padding:4px 10px;
  border-radius:999px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.member-photo-status--pending{
  background:#fff8e8;
  color:#8a5a2b;
}
.member-photo-status--approved{
  background:#edf8f0;
  color:#3d7a4a;
}
.member-photo-status--rejected{
  background:#fff3f1;
  color:#a33a2c;
}
@media(max-width:960px){
  .member-photo-submit-layout{
    grid-template-columns:1fr;
  }
  .member-photo-submit-form__row--2{
    grid-template-columns:1fr;
  }
}
@media(max-width:520px){
  .member-photo-submit-form__row--address-year{
    flex-direction:column;
    align-items:stretch;
  }
  .member-photo-submit-field--year{
    flex:1 1 auto;
    width:auto;
  }
  .member-photo-submit-field--year input{
    text-align:left;
  }
}
@media(max-width:640px){
  .member-photo-submit-item{
    grid-template-columns:72px minmax(0,1fr);
  }
  .member-photo-submit-item__delete{
    grid-column:1 / -1;
  }
}

/* Footer + disclaimer */
.site-footer{
  margin-top:auto;
  background:#fff;
  border-top:1px solid #e2dfd9;
  color:var(--muted);
  font-size:.88rem;
}
.site-footer__inner{
  width:min(1200px,100%);
  margin:0 auto;
  padding:14px clamp(18px,4vw,54px) 13px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  text-align:center;
}
.site-footer__links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:6px 0;
}
.site-footer__links a{
  color:var(--home-blue-dark);
  font-family:"Montserrat",system-ui,sans-serif;
  font-size:.76rem;
  font-weight:600;
  letter-spacing:.04em;
  text-transform:uppercase;
  text-decoration:none;
  padding:0 14px;
}
.site-footer__links a + a{
  border-left:1px solid #d8d3cb;
}
.site-footer__links a:hover{
  color:var(--home-blue);
}
.site-footer__legal{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
  width:100%;
  padding-top:10px;
  border-top:1px solid #ece8e2;
}
.site-footer__copy,
.site-footer__credit{
  margin:0;
  line-height:1.35;
}
.site-footer__copy{
  font-size:.8rem;
  color:#8a8175;
}
.site-footer__credit{
  font-size:.76rem;
  color:#9a9288;
}
.site-footer__credit a{
  color:var(--home-blue-dark);
  font-weight:600;
  text-decoration:none;
}
.site-footer__credit a:hover{
  color:var(--home-blue);
  text-decoration:underline;
}
.site-footer a{
  color:var(--home-blue-dark);
  text-decoration:none;
}
.page--legal{
  padding:0;
}
.legal-page,
.contact-page,
.support-page{
  width:100%;
  max-width:none;
  margin:0;
}
.legal-page .rich-content{
  color:var(--ink);
  line-height:1.75;
}
.legal-page .rich-content p{
  margin:0 0 1.1em;
}
.legal-page__updated{
  margin:28px 0 0;
  padding-top:18px;
  border-top:1px solid var(--line);
  font-size:.88rem;
  color:var(--muted);
}
@media(max-width:720px){
  .site-footer__inner{
    padding:13px 18px 12px;
    gap:9px;
  }
  .site-footer__links a{
    padding:0 10px;
    font-size:.72rem;
  }
  .site-footer__legal{
    padding-top:9px;
    gap:10px;
  }
}

/* GoFundMe / steun-callout */
.support-callout:not(.support-callout--inline){
  width:min(var(--site-content-width),calc(100% - 2 * var(--page-gutter)));
  max-width:var(--site-content-width);
  margin:0 auto 64px;
  padding:0;
  box-sizing:border-box;
}
.support-callout--inline{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:16px 20px;
  width:100%;
  max-width:none;
  margin:28px 0 0;
  padding:20px 22px;
  border:1px solid rgba(185,131,60,.18);
  border-radius:18px;
  background:#fffaf3;
  box-sizing:border-box;
}
.support-callout__icon{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  border-radius:18px;
  background:#fff3d9;
  color:#b9833c;
  flex-shrink:0;
}
.support-callout__icon svg{
  width:24px;
  height:24px;
  fill:currentColor;
  stroke:currentColor;
  stroke-width:1.4;
  stroke-linejoin:round;
}
.support-callout__body h2{
  margin:.2rem 0 .55rem;
  font-family:var(--font-display,Merriweather,Georgia,serif);
  font-size:clamp(1.35rem,2.4vw,1.75rem);
  line-height:1.2;
  color:var(--home-blue-dark,#194756);
}
.support-callout__body p{
  margin:0;
  max-width:640px;
  color:var(--text-soft,#667085);
  line-height:1.55;
  font-size:.98rem;
}
.support-callout__action{
  align-self:center;
}
.support-callout__action .button-link{
  white-space:nowrap;
}
.support-callout__inner{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:22px 26px;
  align-items:center;
  padding:24px 28px;
  border:1px solid rgba(185,131,60,.22);
  border-radius:22px;
  background:linear-gradient(135deg,#fffaf3 0%,#fff 55%,#f7fbfc 100%);
  box-shadow:0 12px 32px rgba(31,41,51,.045);
}
.support-callout--inline .support-callout__icon{
  width:44px;
  height:44px;
  border-radius:14px;
}
.support-callout__title{
  margin:0 0 .35rem;
  font-family:var(--font-sans,Montserrat,system-ui,sans-serif);
  font-size:.95rem;
  font-weight:700;
  color:var(--home-blue-dark,#194756);
}
.support-callout--inline p{
  margin:0;
  color:var(--text-soft,#667085);
  font-size:.94rem;
  line-height:1.55;
}
.support-callout__link{
  display:inline-block;
  margin-top:10px;
  color:var(--home-blue,#2f6677);
  font-weight:600;
  font-size:.92rem;
  text-decoration:none;
}
.support-callout__link:hover{
  color:var(--home-blue-dark,#194756);
  text-decoration:underline;
}
@media(max-width:860px){
  .support-callout__inner{
    grid-template-columns:1fr;
    text-align:left;
  }
  .support-callout__icon{
    width:46px;
    height:46px;
  }
  .support-callout__action .button-link{
    width:100%;
    text-align:center;
  }
}
@media(max-width:720px){
  .support-callout:not(.support-callout--inline){
    margin-bottom:48px;
  }
  .support-callout--inline{
    grid-template-columns:1fr;
    padding:16px 18px;
  }
}

.page--informatie .support-callout--inline{
  width:100%;
  max-width:none;
  margin-top:24px;
}

/* Steun-ons pagina */
.page--support{padding:0;}
.support-page__intro{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:18px 22px;
  align-items:start;
  margin-bottom:24px;
  padding-bottom:22px;
  border-bottom:1px solid var(--line,#e4ded3);
}
.support-page__icon{
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  border-radius:18px;
  background:#fff3d9;
  color:#b9833c;
}
.support-page__icon svg{
  width:26px;
  height:26px;
  fill:currentColor;
  stroke:currentColor;
  stroke-width:1.4;
  stroke-linejoin:round;
}
.support-page__intro h2{
  margin:0 0 .5rem;
  font-family:var(--font-display,Merriweather,Georgia,serif);
  font-size:clamp(1.45rem,2.8vw,1.95rem);
  color:var(--home-blue-dark,#194756);
  line-height:1.2;
}
.support-page__intro p{
  margin:0;
  color:var(--text-soft,#667085);
  line-height:1.6;
}
.support-page__content h2{
  margin:1.75rem 0 .75rem;
  font-family:var(--font-display,Merriweather,Georgia,serif);
  font-size:1.35rem;
  color:var(--home-blue-dark,#194756);
}
.support-page__content h2:first-child{margin-top:0;}
.support-page__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
  padding-top:22px;
  border-top:1px solid var(--line,#e4ded3);
}
.support-page__note{
  margin:14px 0 0;
  font-size:.9rem;
}
@media(max-width:720px){
  .support-page__intro{grid-template-columns:1fr;}
  .support-page__actions .button-link{width:100%;text-align:center;}
}

/* Contactformulier */
.page--contact{
  padding:0;
}
.contact-form{
  margin-top:4px;
}
.contact-form textarea{
  resize:vertical;
  min-height:180px;
}
.contact-form__turnstile{
  margin:4px 0 2px;
}
.contact-page__again{
  margin:0;
}
.contact-honeypot{
  position:absolute;
  left:-10000px;
  width:1px;
  height:1px;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
}
.contact-page .status--ok,
.contact-page .status--error{
  margin:0 0 18px;
  padding:12px 14px;
  border-radius:14px;
  font-weight:600;
}
.contact-page .status--ok{
  background:#edf7f0;
  border:1px solid #c8e6d0;
  color:#1f5a34;
}
.contact-page .status--error{
  background:#fff1f1;
  border:1px solid #f0c8c8;
  color:#8b1e1e;
}

/* Hanneke chatpagina */
.page--hanneke{padding:0;}
.page--hanneke .results-wrap.hanneke-page{
  width:100%;
  max-width:none;
  margin:0;
  padding:32px var(--page-gutter) 72px;
  box-sizing:border-box;
}
.hanneke-shell{
  width:min(1120px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,280px) minmax(0,1fr);
  gap:22px;
  align-items:start;
}
.hanneke-aside{
  padding:20px 18px;
  border:1px solid rgba(24,48,58,.1);
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 28px rgba(31,41,51,.04);
}
.hanneke-aside__lead{
  margin:0;
  color:var(--text-soft,#59636f);
  font-size:.94rem;
  line-height:1.55;
}
.hanneke-aside__label{
  margin:18px 0 10px;
  font-family:var(--font-sans,Montserrat,system-ui,sans-serif);
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--home-blue-dark,#194756);
}
.hanneke-prompts{
  display:grid;
  gap:8px;
}
.hanneke-prompt{
  display:block;
  width:100%;
  padding:11px 13px;
  border:1px solid rgba(24,48,58,.12);
  border-radius:14px;
  background:#f7fafb;
  color:var(--ink,#1f2933);
  font:inherit;
  font-size:.88rem;
  line-height:1.4;
  text-align:left;
  cursor:pointer;
  transition:border-color .15s ease,background .15s ease,transform .15s ease;
}
.hanneke-prompt:hover{
  border-color:rgba(47,102,119,.35);
  background:#eef6f8;
  transform:translateY(-1px);
}
.hanneke-prompt:focus-visible{
  outline:2px solid rgba(47,102,119,.45);
  outline-offset:2px;
}
.hanneke-chat{
  display:flex;
  flex-direction:column;
  min-height:480px;
  border:1px solid rgba(24,48,58,.1);
  border-radius:16px;
  background:#fff;
  box-shadow:0 16px 40px rgba(31,41,51,.07);
  overflow:hidden;
}
.hanneke-chat__head{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 18px;
  border-bottom:1px solid rgba(0,0,0,.06);
  background:#2f6677;
  color:#fff;
}
.hanneke-chat__avatar{
  flex:0 0 42px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(255,255,255,.18);
  color:#fff;
  font-weight:800;
  font-size:1rem;
}
.hanneke-chat__meta strong{
  display:block;
  font-family:var(--font-sans,Montserrat,system-ui,sans-serif);
  font-size:.98rem;
  font-weight:700;
  color:#fff;
  line-height:1.2;
}
.hanneke-chat__meta span{
  display:block;
  margin-top:2px;
  color:rgba(255,255,255,.82);
  font-size:.78rem;
}
.hanneke-chat__messages{
  flex:1 1 auto;
  min-height:300px;
  max-height:min(520px,58vh);
  overflow:auto;
  padding:16px 14px;
  display:flex;
  flex-direction:column;
  gap:6px;
  background-color:#e7ebee;
  background-image:
    radial-gradient(rgba(255,255,255,.45) 1px,transparent 1px);
  background-size:18px 18px;
}
.page--hanneke .chat-message{
  display:flex;
  align-items:flex-end;
  max-width:78%;
}
.page--hanneke .chat-message--assistant{align-self:flex-start;}
.page--hanneke .chat-message--user{align-self:flex-end;}
.page--hanneke .chat-avatar{display:none;}
.page--hanneke .chat-bubble{
  max-width:100%;
  padding:7px 10px 8px;
  border:0;
  box-shadow:0 1px 1px rgba(11,20,26,.08);
  font-size:.84rem;
  line-height:1.42;
}
.page--hanneke .chat-message--assistant .chat-bubble{
  border-radius:0 10px 10px 10px;
  background:#fff;
}
.page--hanneke .chat-message--user .chat-bubble{
  border-radius:10px 0 10px 10px;
  background:#d9fdd3;
}
.page--hanneke .chat-bubble strong{display:none;}
.page--hanneke .chat-bubble p{
  margin:0;
  font-size:.84rem;
  line-height:1.42;
  color:#111b21;
}
.hanneke-chat__form{
  padding:8px 10px 10px;
  border-top:1px solid rgba(0,0,0,.06);
  background:#f0f2f5;
}
.hanneke-chat__composer{
  display:flex;
  align-items:flex-end;
  gap:8px;
}
.hanneke-chat__composer textarea{
  flex:1 1 auto;
  width:100%;
  resize:none;
  min-height:42px;
  max-height:120px;
  border:0;
  border-radius:24px;
  padding:10px 16px;
  font-size:.875rem;
  line-height:1.4;
  background:#fff;
  box-shadow:0 1px 2px rgba(11,20,26,.06);
}
.hanneke-chat__composer textarea:focus{
  outline:none;
  box-shadow:0 0 0 2px rgba(47,102,119,.25);
}
.hanneke-chat__send{
  flex:0 0 44px;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  padding:0;
  background:#2f6677;
  color:#fff;
  cursor:pointer;
  transition:background .15s ease,transform .15s ease;
}
.hanneke-chat__send:hover{background:#194756;}
.hanneke-chat__send:active{transform:scale(.96);}
.page--hanneke .chat-status{
  display:block;
  min-height:1.1em;
  margin:6px 4px 0;
  color:#667781;
  font-size:.75rem;
  line-height:1.35;
}
@media(max-width:900px){
  .hanneke-shell{grid-template-columns:1fr;}
  .hanneke-aside{padding:16px;}
  .hanneke-prompts{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .hanneke-chat{min-height:420px;}
  .hanneke-chat__messages{max-height:min(460px,52vh);}
}
@media(max-width:560px){
  .page--hanneke .results-wrap.hanneke-page{padding:24px var(--page-gutter) 56px;}
  .hanneke-prompts{grid-template-columns:1fr;}
  .page--hanneke .chat-message{max-width:88%;}
}

/* Uniforme subpagina-breedte — gelijk aan page-header */
main:not(.home-page) > .results-wrap:not(.results-wrap--home):not(.results-wrap--curiosa){
  width:100%;
  max-width:none;
  margin-inline:0;
  padding-inline:var(--page-gutter);
  padding-bottom:72px;
  box-sizing:border-box;
}
main:not(.home-page) > .results-wrap:not(.results-wrap--home):not(.results-wrap--curiosa) > *{
  width:min(var(--site-content-width),100%);
  max-width:var(--site-content-width);
  margin-inline:auto;
}
main:not(.home-page) > .address-page,
main:not(.home-page) > .walk-route-page{
  width:min(var(--site-content-width),calc(100% - 2 * var(--page-gutter)));
  max-width:var(--site-content-width);
  margin-inline:auto;
  padding-inline:0;
  padding-top:26px;
  padding-bottom:72px;
  box-sizing:border-box;
}
@media(max-width:900px){
  :root{--page-gutter:16px;}
  main:not(.home-page) > .address-page,
  main:not(.home-page) > .walk-route-page{
    width:min(var(--site-content-width),calc(100% - 2 * var(--page-gutter)));
  }
}

/* Homepage: één contentkolom — zoek, status, stats en welkom gelijk uitgelijnd */
.home-page .home-search,
.home-page .results-wrap--home,
.home-page .stats-strip,
.home-page .home-welcome,
.home-page .feature-grid--home,
.home-page .home-insights,
.home-page .daily-pick,
.home-page .support-callout{
  width:min(var(--site-content-width),calc(100% - 2 * var(--page-gutter)));
  max-width:var(--site-content-width);
  margin-inline:auto;
  padding-inline:0;
  box-sizing:border-box;
}
.home-page .home-search{
  margin-top:-74px;
}
.home-page .results-wrap--home{
  padding-top:22px;
  padding-bottom:26px;
}
.home-page .results-wrap--home .status,
.home-page .results-wrap--home .results{
  width:100%;
}
.home-page .stats-strip{
  margin-top:16px;
  margin-bottom:42px;
}
.home-page .home-welcome{
  margin-bottom:34px;
}
.home-page .feature-grid--home{
  margin-bottom:38px;
}
.home-page .home-insights{
  margin-bottom:42px;
}
.home-page .daily-pick{
  margin:24px auto 42px;
  padding-inline:0;
}
.home-page .support-callout{
  margin-bottom:64px;
  padding-inline:0;
}
@media(max-width:900px){
  .home-page .home-search{margin-top:-52px;}
}
@media(max-width:800px){
  .home-page .home-search{margin-top:-44px;}
}
@media(max-width:760px){
  .home-page .home-search{margin-top:-36px;}
}

/* Mobiel landscape: smalle viewport-hoogte, soms breedte >800px */
@media (orientation: landscape) and (max-height: 520px){
  .site-header{
    position:sticky;
    display:grid !important;
    grid-template-columns:1fr auto;
    align-items:center !important;
    flex-direction:row !important;
    gap:8px 12px;
    padding:6px 12px !important;
    min-height:0;
  }
  .site-header .brand,
  .brand--logo{
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    min-width:0;
    justify-content:flex-start !important;
  }
  .brand__mark img,
  .site-header .brand img{
    width:auto !important;
    max-width:min(220px,42vw) !important;
    max-height:34px !important;
  }
  .mobile-nav-toggle{
    display:inline-flex !important;
    min-height:40px;
    padding:8px 12px;
    gap:8px;
    font-size:.88rem;
  }
  .main-nav{
    grid-column:1 / -1;
    display:none !important;
    width:100%;
    max-width:none !important;
    margin:2px 0 0 !important;
    padding:8px !important;
    border:1px solid var(--line);
    border-radius:14px;
    background:#fffdf8;
    box-shadow:0 12px 28px rgba(31,41,51,.12);
    overflow-y:auto !important;
    max-height:min(240px,calc(100dvh - 52px));
  }
  body.mobile-nav-open .main-nav{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }
  .main-nav a{
    display:flex !important;
    align-items:center;
    justify-content:center;
    min-height:40px !important;
    padding:8px 10px !important;
    font-size:.78rem !important;
    line-height:1.15;
    border-radius:10px;
    background:#f7efe3;
    text-align:center;
    white-space:normal;
  }
  .main-nav a::after{display:none;}
  .page-header,
  .subhero,
  .page-hero,
  .subhero--address,
  .subhero--walk,
  .subhero--member,
  .subhero--information,
  .subhero--curiosa,
  .subhero--hanneke,
  .page-hero--hanneke{
    min-height:64px !important;
    padding:12px 16px !important;
  }
  .subhero h1,
  .page-header h1,
  .page-hero h1{
    font-size:clamp(1.35rem,4vw,1.75rem) !important;
  }
  .home-hero{min-height:220px;}
  .home-hero__inner{padding:24px 16px 48px;}
  .home-hero h1{font-size:clamp(1.45rem,5vw,2rem);}
  .home-intro{font-size:.95rem;margin-top:12px;}
  .home-search{margin-top:-28px;}
  .slider-dots{bottom:40px;}
}
@media (orientation: landscape) and (max-height: 400px){
  .mobile-nav-toggle__text{display:none;}
  .brand__mark img,
  .site-header .brand img{max-height:30px !important;}
}

/* Kennisbank — losse artikelpagina */
.page--kennisbank{
  padding:0;
}
.results-wrap--kennisbank{
  width:100%;
  max-width:none;
  margin:0;
  padding:32px var(--page-gutter) 80px;
  box-sizing:border-box;
}
.results-wrap--kennisbank > *{
  width:min(var(--site-content-width),100%);
  max-width:var(--site-content-width);
  margin-inline:auto;
}
.knowledge-article.content-card,
.knowledge-empty-card{
  width:auto;
  max-width:none;
  margin:0;
  padding:clamp(24px,4vw,42px);
  border-radius:24px;
  background:var(--card);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.knowledge-empty-card h2{
  margin:0 0 14px;
  font-family:Fraunces,Georgia,serif;
  color:var(--brand-dark);
  font-size:clamp(1.55rem,3vw,2.1rem);
  line-height:1.15;
}
.knowledge-empty-card p{
  margin:0;
  color:var(--muted);
  font-size:1.05rem;
  line-height:1.65;
}
.knowledge-empty-card__actions{
  margin-top:22px !important;
}
.knowledge-article__type{
  display:inline-block;
  margin:0 0 14px;
  padding:5px 12px;
  border-radius:999px;
  background:#eef6f8;
  color:var(--brand-dark);
  font-size:.76rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.knowledge-article__keyword{
  margin:0 0 18px;
  color:var(--muted);
  font-size:.96rem;
}
.knowledge-article__keyword strong{
  color:var(--ink);
  font-weight:800;
}
.knowledge-article__layout{
  display:block;
}
.knowledge-article__layout--has-media{
  display:grid;
  grid-template-columns:minmax(0,1fr) min(360px,38%);
  gap:clamp(20px,3vw,34px);
  align-items:start;
}
.knowledge-article__body{
  max-width:760px;
  font-size:1.08rem;
  line-height:1.78;
}
.knowledge-article__layout--has-media .knowledge-article__body{
  max-width:none;
}
.knowledge-article__body p:first-child,
.knowledge-body__main p:first-child{
  margin-top:0;
}
.knowledge-article__media{
  margin:0;
  order:2;
  border-radius:18px;
  overflow:hidden;
  border:1px solid var(--line);
  background:#f1eadf;
  box-shadow:0 12px 28px rgba(31,41,51,.08);
}
.knowledge-article__media img{
  display:block;
  width:100%;
  height:auto;
}
.knowledge-body__source{
  margin:1.75rem 0 0;
  padding-top:1.1rem;
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:.94rem;
  line-height:1.55;
  font-style:italic;
}
.knowledge-article__footer{
  margin-top:28px;
  padding-top:22px;
  border-top:1px solid var(--line);
}
.knowledge-article__footer .button-link{
  width:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 18px;
  border:1px solid var(--brand);
  border-radius:999px;
  background:#fff;
  color:var(--brand);
  font-weight:800;
  text-decoration:none;
}
.knowledge-article__footer .button-link:hover,
.knowledge-article__footer .button-link:focus-visible{
  background:#eef6f8;
  color:var(--brand-dark);
  outline:none;
}
@media(max-width:760px){
  .results-wrap--kennisbank{
    padding:24px 16px 56px;
  }
  .knowledge-article__layout--has-media{
    grid-template-columns:1fr;
  }
  .knowledge-article__media{
    order:0;
  }
  .knowledge-article__body{
    max-width:none;
  }
  .knowledge-article__footer .button-link{
    width:100%;
  }
}
