
:root{--bg:#f4f3ef;--ink:#252923;--soft:#73786e;--line:#deded5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button{font:inherit}header{max-width:1220px;width:calc(100% - 64px);margin:auto;min-height:104px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{font-size:15px;letter-spacing:.17em;font-weight:600}nav{display:flex;gap:30px}nav a,footer a{font-size:12px;text-decoration:none;color:var(--ink);letter-spacing:.08em}nav a:hover{opacity:.6}main{max-width:1220px;margin:auto}.hero{text-align:center;padding:68px 24px 92px}.eyebrow{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--soft)}h1,h2,.big-quote{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.042em}h1{font-size:clamp(38px,5.3vw,70px);margin:16px 0 12px}.lead{font-size:15px;line-height:1.7;color:var(--soft);margin:0 auto 44px;max-width:520px}.hero-photo{display:block;background:none;border:0;cursor:zoom-in;width:min(100%,550px);margin:auto;padding:0;box-shadow:0 23px 46px rgba(25,30,20,.13),0 2px 8px rgba(25,30,20,.06);transition:transform .35s ease,box-shadow .35s ease}.hero-photo img{width:100%;display:block}.hero-photo:hover{transform:translateY(-4px);box-shadow:0 30px 55px rgba(25,30,20,.16)}.photo-caption{display:flex;justify-content:space-between;align-items:center;width:min(100%,550px);margin:17px auto 0;font-size:11px;color:var(--soft);letter-spacing:.06em}.jump{display:inline-block;color:var(--ink);text-decoration:none;margin-top:58px;font-size:11px;letter-spacing:.15em}.gallery{border-top:1px solid var(--line);padding:73px 32px 105px}.section-head{display:flex;justify-content:space-between;gap:25px;align-items:baseline}.section-head h2{font-size:clamp(32px,4vw,46px);margin:0}.section-head p{color:var(--soft);font-size:13px}.intro{font-size:14px;line-height:1.8;color:var(--soft);max-width:550px;margin:18px 0 28px}.filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 43px}.filter{cursor:pointer;border:1px solid var(--line);background:transparent;border-radius:100px;padding:10px 15px;font-size:12px;color:var(--soft);transition:background .2s,color .2s}.filter[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.filter:hover:not([aria-pressed="true"]){color:var(--ink);border-color:var(--ink)}.works{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:68px;row-gap:78px;align-items:center}.work{margin:0;min-width:0}.work:nth-child(5n + 1){grid-column:1/-1;width:min(100%,880px);justify-self:center}.work:nth-child(5n + 4){width:82%;justify-self:center}.photo-button{padding:0;border:0;background:transparent;display:block;width:100%;cursor:zoom-in}.photo-button img{display:block;width:100%;height:auto;max-height:670px;object-fit:contain;box-shadow:0 16px 34px rgba(25,30,20,.09),0 2px 4px rgba(25,30,20,.025);transition:transform .35s,box-shadow .35s}.photo-button:hover img{transform:translateY(-4px);box-shadow:0 24px 43px rgba(25,30,20,.15)}figcaption{display:flex;gap:20px;justify-content:space-between;color:var(--soft);font-size:12px;margin-top:15px;line-height:1.6}.small-num{font-size:10px;white-space:nowrap;letter-spacing:.06em}figure[hidden]{display:none!important}.statement{border-top:1px solid var(--line);padding:65px 32px 85px;display:flex;justify-content:space-between;gap:45px}.statement h2{font-size:34px;margin:0}.statement p{max-width:560px;color:#62685f;font-size:16px;line-height:1.85;margin:0}footer{max-width:1220px;margin:auto;border-top:1px solid var(--line);padding:28px 32px 45px;display:flex;justify-content:space-between;font-size:12px;color:var(--soft)}/* Variant 3: the photo expands within the same visual atmosphere. */
.lightbox{position:fixed;inset:0;z-index:10;background:var(--bg);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(62px,8vh,90px) clamp(52px,8vw,145px) 65px;overflow:auto}
.lightbox[hidden]{display:none}
.lightbox img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 186px);object-fit:contain;box-shadow:0 22px 48px rgba(25,30,20,.13),0 3px 11px rgba(25,30,20,.055)}
.lightbox .meta{display:flex;justify-content:space-between;gap:20px;width:min(100%,940px);margin-top:23px;color:var(--soft);font-size:12px;letter-spacing:.04em}
.icon-button{position:absolute;cursor:pointer;border:1px solid transparent;background:transparent;color:var(--ink);padding:10px 14px;font-size:25px;line-height:1;border-radius:50%;transition:opacity .2s ease,background .2s ease}
.icon-button:hover{background:rgba(40,45,34,.055)}
.close{top:26px;right:clamp(18px,4vw,65px);font-size:27px}
.prev{left:clamp(8px,2.4vw,40px);top:50%;transform:translateY(-50%)}
.next{right:clamp(8px,2.4vw,40px);top:50%;transform:translateY(-50%)}
.hint{font-size:10px;position:absolute;bottom:22px;color:var(--soft);letter-spacing:.07em}
.photo-button:focus-visible,.hero-photo:focus-visible,.filter:focus-visible,.icon-button:focus-visible{outline:3px solid #8f9b8b;outline-offset:5px}body.modal-open{overflow:hidden}@media(max-width:750px){header{width:calc(100% - 36px);padding:20px 0;min-height:78px;gap:18px;flex-wrap:wrap}.brand{font-size:12px}nav{gap:14px}nav a{font-size:10px}.hero{padding:52px 18px 74px}.lead{font-size:14px;margin-bottom:36px}.gallery{padding:56px 18px 76px}.section-head{display:block}.section-head p{margin:12px 0 0}.works{grid-template-columns:1fr;row-gap:46px}.work:nth-child(n){grid-column:auto;width:100%;justify-self:stretch}.statement{padding:55px 18px 75px;display:block}.statement h2{margin-bottom:22px}footer{padding:25px 18px 40px;flex-wrap:wrap;gap:18px}.lightbox{padding:75px 36px 78px}.lightbox img{max-width:100%;max-height:calc(100dvh - 205px)}.lightbox .meta{font-size:11px;margin-top:16px}.prev,.next{top:auto;bottom:18px;transform:none}.prev{left:15px}.next{right:15px}.hint{display:none}.close{right:12px;top:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}


/* Composed website: three sections, one quiet visual language */
[hidden]{display:none!important}
.site-nav a{border-bottom:1px solid transparent;padding-bottom:4px}
.site-nav a[aria-current="page"]{border-color:var(--ink)}
.site-page{min-height:55vh}
.section-note{color:var(--soft);font-size:12px;letter-spacing:.03em}
.home-collection{border-top:1px solid var(--line);padding:72px 32px 98px}
.home-collection .section-head{margin-bottom:12px}
.home-collection .intro{margin-bottom:50px}
.home-showcase{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(28px,5vw,66px);align-items:center}
.home-showcase figure{margin:0}
.home-showcase figure:nth-child(2){margin-top:110px}
.home-showcase figure:nth-child(3){grid-column:1/-1;width:min(72%,780px);margin:0 auto}
.home-showcase button{width:100%;border:0;background:transparent;padding:0;cursor:zoom-in}
.home-showcase img{display:block;width:100%;height:auto;box-shadow:0 16px 34px rgba(25,30,20,.09),0 2px 4px rgba(25,30,20,.025);transition:transform .35s,box-shadow .35s}
.home-showcase button:hover img{transform:translateY(-4px);box-shadow:0 24px 43px rgba(25,30,20,.15)}
.home-showcase figcaption{font-size:12px;color:var(--soft);margin-top:17px}
.simple-link{display:inline-flex;gap:14px;align-items:center;margin-top:55px;color:var(--ink);font-size:12px;letter-spacing:.09em;text-decoration:none;border-bottom:1px solid #a8aaa1;padding-bottom:8px}
.about-page{padding:90px 32px 118px;max-width:1100px;margin:auto}
.about-page h1{font-size:clamp(42px,5vw,68px);margin:22px 0 36px}
.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:start}
.about-layout p{font-size:17px;line-height:1.95;color:#60665d;margin:0 0 24px}
.about-layout .about-small{font-size:13px;color:var(--soft)}
.about-layout img{display:block;width:100%;height:auto;border-radius:24px;border:1px solid #ddd9cf;box-shadow:0 16px 34px rgba(25,30,20,.09)}
.about-layout figure{margin:0}
.about-layout figcaption{margin-top:16px;color:var(--soft);font-size:12px}
.home-end{border-top:1px solid var(--line);padding:82px 32px 98px;display:flex;justify-content:space-between;gap:30px;align-items:start}
.home-end h2{margin:0;font-size:clamp(32px,4vw,44px)}
.home-end p{margin:0;max-width:510px;line-height:1.9;color:#62685f}
.gallery .filters{margin-bottom:43px}
.gallery-intro{max-width:650px}
.contact-footer a{color:inherit;text-decoration:none;border-bottom:1px solid #b6b9af}
.photo-button:focus-visible,.hero-photo:focus-visible,.home-showcase button:focus-visible,.site-nav a:focus-visible,.simple-link:focus-visible{outline:3px solid #8f9b8b;outline-offset:5px}
@media(max-width:750px){.home-collection{padding:55px 18px 80px}.home-showcase{gap:32px;grid-template-columns:1fr}.home-showcase figure:nth-child(2){margin-top:0}.home-showcase figure:nth-child(3){grid-column:auto;width:100%}.about-page{padding:60px 18px 85px}.about-layout{grid-template-columns:1fr;gap:45px}.home-end{padding:55px 18px 75px;display:block}.home-end h2{margin-bottom:20px}nav.site-nav{gap:16px;flex-wrap:wrap}.site-nav a{font-size:11px}}

/* Responsieve verfijning v1.2 — behoud van het oorspronkelijke galeriegevoel. */
html,body{width:100%;overflow-x:clip}
img{max-width:100%}
.site-nav a{display:inline-flex;align-items:center;min-height:44px}
.filter{min-height:44px}
.icon-button{min-width:44px;min-height:44px;display:grid;place-items:center}
.lightbox{overscroll-behavior:contain}
.lightbox img{flex:0 1 auto;min-height:0}
@media (min-width:751px) and (max-width:1050px){
 header{width:calc(100% - 56px)}
 .home-collection,.gallery,.about-page{padding-left:28px;padding-right:28px}
 .works{column-gap:34px;row-gap:58px}
 .home-showcase{gap:5vw}
 .about-layout{gap:5vw}
 .lightbox{padding-left:72px;padding-right:72px}
}
@media(max-width:750px){
 header{width:calc(100% - 36px);flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:18px 0 10px}
 .brand{font-size:13px;letter-spacing:.16em;text-align:center}
 nav.site-nav{width:100%;justify-content:center;gap:clamp(18px,5vw,34px);flex-wrap:nowrap}
 .site-nav a{font-size:12px;letter-spacing:.04em;min-height:44px;white-space:nowrap}
 .hero{padding:54px 18px 66px}
 .hero h1{font-size:clamp(37px,9vw,58px);line-height:1.09}
 .lead{max-width:340px;margin-bottom:34px;line-height:1.8}
 .hero-photo{width:min(100%,500px)}
 .jump{margin-top:44px}
 .home-collection,.gallery{padding:56px 20px 76px}
 .home-showcase{gap:46px}
 .home-showcase figure:nth-child(2),.home-showcase figure:nth-child(3){margin-top:0}
 .home-showcase img,.photo-button img{box-shadow:0 12px 28px rgba(25,30,20,.09),0 2px 5px rgba(25,30,20,.025)}
 .works{row-gap:48px}
 .photo-caption,figcaption{line-height:1.6}
 .about-page{padding:58px 20px 80px}
 .about-page h1{font-size:clamp(39px,9vw,56px)}
 .about-layout{gap:40px}
 .about-layout p{font-size:16px;line-height:1.85}
 .about-layout img{border-radius:20px}
 .home-end{padding:56px 20px 78px}
 footer{padding:26px 20px 44px}
 .lightbox{padding:68px 20px calc(92px + env(safe-area-inset-bottom));justify-content:center}
 .lightbox img{max-height:calc(100dvh - 190px - env(safe-area-inset-bottom));object-fit:contain}
 .lightbox .meta{max-width:100%;font-size:11px;margin-top:16px;justify-content:space-between}
 .close{right:12px;top:calc(9px + env(safe-area-inset-top))}
 .prev,.next{bottom:calc(15px + env(safe-area-inset-bottom));top:auto;transform:none}
 .prev{left:16px}.next{right:16px}
}
@media(max-width:380px){
 header{width:calc(100% - 24px)}
 .site-nav a{font-size:11px}
 .hero{padding-left:14px;padding-right:14px}
 .home-collection,.gallery,.about-page{padding-left:16px;padding-right:16px}
 .lightbox{padding-left:14px;padding-right:14px}
}
@media(max-height:510px) and (orientation:landscape){
 .lightbox{padding:42px 75px 32px}
 .lightbox img{max-height:calc(100dvh - 112px)}
 .lightbox .meta{margin-top:9px}
 .prev,.next{top:50%;bottom:auto;transform:translateY(-50%)}
 .close{top:4px}
}
@media(hover:none){
 .hero-photo:hover,.home-showcase button:hover img,.photo-button:hover img{transform:none}
}

/* Portfolio v1.3: three curated chapters, same visual foundation. */
.portfolio-opening{text-align:center;padding:80px 24px 82px}
.portfolio-opening h1{margin:18px 0 21px;font-size:clamp(40px,5.4vw,72px)}
.portfolio-lead{max-width:610px;margin:0 auto;color:var(--soft);font-size:16px;line-height:1.9}
.chapter-links{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;margin-top:42px}
.chapter-links a{font-size:12px;text-decoration:none;color:var(--ink);border-bottom:1px solid #babcb3;padding:8px 0}
.chapter-links a:hover{border-color:var(--ink)}
.portfolio-chapter{border-top:1px solid var(--line);padding:78px 32px 110px;scroll-margin-top:24px}
.portfolio-chapter h2{font-size:clamp(35px,4.3vw,57px);margin:16px 0 16px}
.chapter-text{max-width:600px;margin:0 0 58px;color:#656b61;font-size:16px;line-height:1.9}
.chapter-works{row-gap:90px}
.portfolio-outro{border-top:1px solid var(--line);padding:65px 32px 95px;text-align:center}
.portfolio-outro p{font:italic 22px/1.6 Georgia,serif;max-width:600px;margin:auto;color:#686e63}
.chapter-links a:focus-visible{outline:3px solid #8f9b8b;outline-offset:5px}
@media(max-width:750px){.portfolio-opening{padding:60px 20px 65px}.portfolio-lead{font-size:14px}.chapter-links{gap:10px 20px;margin-top:30px}.portfolio-chapter{padding:60px 20px 75px}.chapter-text{font-size:15px;margin-bottom:42px}.chapter-works{row-gap:52px}.portfolio-outro{padding:55px 20px 70px}.portfolio-outro p{font-size:20px}}

/* v1.4: discrete privacy and copyright details; design untouched elsewhere */
.policy-page{padding:86px 32px 110px;max-width:870px;margin:0 auto}
.policy-page h1{font-size:clamp(38px,5vw,66px);margin:20px 0 26px}
.policy-page h2{font:normal 28px/1.3 Georgia,serif;letter-spacing:-.025em;margin:42px 0 13px}
.policy-page p{font-size:15px;line-height:1.9;color:#62685f;margin:0 0 16px}
.policy-page .policy-lead{font-size:17px;color:var(--ink)}
.policy-page .policy-note{margin-top:44px;padding:18px 20px;border-left:2px solid #c5c7bc;background:#eeeee7;font-size:13px}
.footer-links{display:flex;gap:22px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.footer-links a{text-underline-offset:4px;border-bottom:1px solid #b6b9af}
.copyright-note{color:var(--soft);font-size:11px;line-height:1.7;text-align:center;max-width:790px;margin:0 auto;padding:0 20px 30px}
@media(max-width:750px){.policy-page{padding:62px 20px 82px}.policy-page h2{font-size:25px}.footer-links{justify-content:flex-start}}
/* v1.6: het liggende zeegezicht op Home krijgt meer visueel gewicht; mobiel blijft één kolom. */

/* v2.1: uitgebreid vogelhoofdstuk en vijf fotothema’s */
.chapter-links{flex-wrap:wrap;row-gap:12px}
.portfolio-chapter{scroll-margin-top:28px}
.highlanders-chapter .chapter-text{margin-bottom:25px}.chapter-placeholder{font-size:12px;letter-spacing:.04em;color:var(--soft);font-style:italic;margin:0;line-height:1.8}

/* v2.2 — portfolio overzicht en afzonderlijke collectiepagina’s */
.collection-overview{padding:0 32px 96px}
.collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(38px,6vw,88px);row-gap:96px;align-items:start}
.collection-card{min-width:0}
.collection-card:nth-child(2n){padding-top:115px}
.collection-card:last-child:nth-child(odd){grid-column:1/-1;width:min(100%,660px);justify-self:center}
.collection-card-link{display:block;color:inherit;text-decoration:none}
.collection-card-photo{width:100%;box-shadow:0 16px 34px rgba(25,30,20,.09),0 2px 4px rgba(25,30,20,.025);transition:transform .35s ease,box-shadow .35s ease;background:#e7e8e1}
.collection-card-photo img{display:block;width:100%;height:auto;max-height:580px;object-fit:contain}
.collection-card-link:hover .collection-card-photo{transform:translateY(-5px);box-shadow:0 25px 43px rgba(25,30,20,.14)}
.collection-card-eyebrow{display:block;margin-top:29px}
.collection-card h2{font-size:clamp(29px,3.6vw,44px);margin:11px 0 12px}
.collection-card p{font-size:14px;line-height:1.85;color:#656b61;margin:0;max-width:520px}
.collection-card-more{display:inline-block;margin-top:23px;padding-bottom:7px;border-bottom:1px solid #b6b9af;font-size:12px;letter-spacing:.045em}
.collection-card-link:focus-visible,.collection-back:focus-visible{outline:3px solid #8f9b8b;outline-offset:7px}
.collection-back{display:inline-block;font-size:12px;text-decoration:none;color:var(--soft);letter-spacing:.06em;margin-bottom:56px;border-bottom:1px solid #b6b9af;padding-bottom:7px}
.collection-end{padding-top:45px;text-align:center}
.collection-end .simple-link{margin-top:0}
.portfolio-chapter{border-top:0;padding-top:58px}
.portfolio-opening{padding-bottom:80px}
@media(max-width:750px){
 .collection-overview{padding:0 20px 70px}
 .collection-grid{grid-template-columns:1fr;row-gap:64px}
 .collection-card:nth-child(n){grid-column:auto;width:100%;justify-self:stretch;padding-top:0}
 .collection-card-photo img{max-height:none}
 .collection-card-eyebrow{margin-top:24px}
 .collection-card h2{font-size:36px}
 .collection-card p{font-size:14px}
 .collection-back{margin-bottom:42px}
 .portfolio-chapter{padding-top:38px}
}
@media(hover:none){.collection-card-link:hover .collection-card-photo{transform:none}}

/* v2.3 - featured flowers: large natural ratio, no crop of photograph */
#bloemen .chapter-works .work.flower-feature{grid-column:1/-1;width:min(100%,930px);justify-self:center}
#bloemen .chapter-works .work.flower-feature .photo-button img{max-height:770px;object-fit:contain}
@media(max-width:750px){#bloemen .chapter-works .work.flower-feature{width:100%}#bloemen .chapter-works .work.flower-feature .photo-button img{max-height:none}}

/* v2.4: prominent opening image and context/detail diptych for wildlife */
#wildlife .chapter-works .wildlife-feature{grid-column:1 / -1;width:min(100%,1000px);justify-self:center}
#wildlife .chapter-works .wildlife-feature .photo-button img{max-height:760px;object-fit:contain}
#wildlife .chapter-works .wildlife-giraffe-full,
#wildlife .chapter-works .wildlife-giraffe-detail{width:100%;align-self:start}
#wildlife .chapter-works .wildlife-giraffe-detail .photo-button img{max-height:560px;object-fit:contain}
#wildlife .image-note{font-size:12px;line-height:1.7;color:var(--soft);margin:9px 0 0}
@media(max-width:750px){#wildlife .chapter-works .wildlife-feature{width:100%}#wildlife .chapter-works .wildlife-feature .photo-button img{max-height:none}}

/* v2.5 - generous panoramic coastal photograph */
#water .chapter-works .water-feature{grid-column:1 / -1;width:min(100%,1000px);justify-self:center}
#water .chapter-works .water-feature .photo-button img{max-height:750px;object-fit:contain}
@media(max-width:750px){#water .chapter-works .water-feature{width:100%}#water .chapter-works .water-feature .photo-button img{max-height:none}}

/* v2.8 — Een centraal, zwevend fotobeeld zonder extra achtergrondkaders. */
:root { --photo-shadow: 0 16px 34px rgba(25,30,20,.09), 0 2px 4px rgba(25,30,20,.025); --photo-shadow-hover: 0 24px 43px rgba(25,30,20,.15); }
.photo-button { display:flex; justify-content:center; align-items:flex-start; }
.photo-button img { width:auto; max-width:100%; height:auto; margin-inline:auto; box-shadow:var(--photo-shadow); }
.collection-card-photo { background:transparent; box-shadow:none; }
.collection-card-photo img { width:auto; max-width:100%; height:auto; margin-inline:auto; box-shadow:var(--photo-shadow); }
.collection-card-link:hover .collection-card-photo { box-shadow:none; }
.collection-card-link:hover .collection-card-photo img { box-shadow:var(--photo-shadow-hover); }
.home-showcase img { box-shadow:var(--photo-shadow); }
/* Foto 35: meer nadruk met behoud van de gehele originele compositie. */
#hooglanders .chapter-works .work.highlander-feature { grid-column:1 / -1; width:min(100%,720px); justify-self:center; }
@media (max-width:750px) {
  #hooglanders .chapter-works .work.highlander-feature { grid-column:auto; width:100%; }
  .photo-button img, .home-showcase img, .collection-card-photo img { box-shadow:var(--photo-shadow); }
}
@media (hover:none) { .collection-card-link:hover .collection-card-photo img { box-shadow:var(--photo-shadow); } }

/* v2.8b — rustige tweekolomsindeling en captions direct onder het beeld. */
/* De fotobreedte volgt de beeldverhouding: één regel voor alle collectiekaarten. */
.collection-card-link {
  width:min(100%,calc(580px * var(--cover-ratio)));
  margin-inline:auto;
}
/* Vogels: terug naar het vollere ritme van v2.8, met iets meer beeldruimte. */
#vogels .chapter-works {
  column-gap:clamp(26px,4vw,54px);
  row-gap:clamp(46px,6vw,72px);
}
/* Als een staand of vierkant beeld in een ruimer gridvak staat, volgt de
   onderschriftbreedte de foto zelf en niet de breedte van het gridvak. */
#vogels .chapter-works .work.caption-fit,
#wildlife .chapter-works .work.caption-fit,
#reptielen .chapter-works .work.caption-fit {
  width:min(100%,calc(670px * var(--photo-ratio)));
  justify-self:center;
}
@media(max-width:750px){
  .collection-card-link {width:100%;}
  #vogels .chapter-works .work.caption-fit,
  #wildlife .chapter-works .work.caption-fit,
  #reptielen .chapter-works .work.caption-fit {
    grid-column:auto;
    width:100%;
    justify-self:stretch;
  }
}

/* v2.8c — één structurele uitlijningsregel voor iedere portfoliofoto.
   Het onderschrift volgt het daadwerkelijk zichtbare fotovlak,
   ook bij vierkante/staande foto's binnen een brede galerijcel. */
.chapter-works .work > .photo-button,
.chapter-works .work > figcaption {
  width: min(100%, calc(var(--photo-max-height, 670px) * var(--photo-ratio)));
  margin-inline: auto;
}
#bloemen .chapter-works .work.flower-feature { --photo-max-height: 770px; }
#wildlife .chapter-works .work.wildlife-feature { --photo-max-height: 760px; }
#wildlife .chapter-works .work.wildlife-giraffe-detail { --photo-max-height: 560px; }
#water .chapter-works .work.water-feature { --photo-max-height: 750px; }


/* v3.0 — bescheiden uitnodiging tot reageren */
.reaction-invite{margin-top:2.1rem;}
.reaction-invite p{margin-bottom:.7rem;}

/* v3.2: contactadres is gewone tekst, geen interactieve mailto-link */
.contact-address{display:block;margin-top:.7rem;color:var(--ink);font-size:inherit;letter-spacing:normal;overflow-wrap:anywhere;user-select:text;}

/* v3.4 — e-mailadres als blauwe, klikbare tekst; geen knop */
.email-link, .email-link:visited {color:#0645ad;text-decoration:underline;text-underline-offset:2px;}
.email-link:hover {color:#00358c;}
.email-link:focus-visible {outline:2px solid #0645ad;outline-offset:3px;}
