@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Instrument+Serif:ital@0;1&display=swap');
:root{--paper:#eeece5;--ink:#252923;--muted:#64685f;--line:#c9ccc0;--olive:#6b7453;--serif:'Instrument Serif',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--olive);outline-offset:6px}::selection{background:#c3cbaa}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400;line-height:1.02;font-family:var(--serif)}em{font-weight:400;color:var(--olive)}header,footer{padding:0 5%;display:flex;align-items:center;justify-content:space-between}header{height:100px;border-bottom:1px solid var(--line)}.logo{font-family:var(--serif);font-size:40px;letter-spacing:-1.7px}nav{display:flex;gap:36px;font-size:12px}nav a:last-child{margin-left:35px}nav a:hover{color:var(--olive)}section{padding:90px 5%;max-width:1700px;margin:auto}.sectionhead,small{font-size:10px;letter-spacing:1.5px}.hero{padding-top:55px;padding-bottom:30px}.hero h1{font-size:clamp(95px,13vw,190px);letter-spacing:-6px;margin-top:35px;line-height:.91;position:relative}.hero h1 span{position:absolute;right:16%;bottom:10px;font-family:Georgia;font-size:80px;color:var(--olive)}.herofoot{display:flex;justify-content:space-between;align-items:end;margin-top:45px}.herofoot p{font-size:13px;line-height:1.65}.herofoot a{display:flex;align-items:center;gap:25px;font-size:12px}.herofoot b{font-size:22px;font-weight:400;display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--ink);border-radius:50%;transition:.3s}.herofoot a:hover b{background:var(--ink);color:var(--paper);transform:translateY(4px)}.herofoot small{font-size:8px;writing-mode:vertical-rl}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:9%;align-items:center;padding-top:45px}.intro figure{aspect-ratio:1/1.1;position:relative;overflow:hidden;background:#c4c0b7}.intro img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%;transition:transform 1s}.intro figure:hover img{transform:scale(1.025)}figcaption{position:absolute;left:22px;right:22px;bottom:20px;color:white;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;text-shadow:0 1px 4px #000}.intro h2{font-size:clamp(44px,5vw,74px);letter-spacing:-1.5px;margin:28px 0}.intro p{max-width:360px;color:var(--muted);font-size:14px;margin-bottom:30px}.link,article button{font-size:12px;border:0;border-bottom:1px solid var(--line);padding:0 0 8px;background:none}.link:hover,article button:hover{border-color:var(--ink)}.sectionhead{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px}.big{font-size:clamp(52px,6.3vw,94px);letter-spacing:-2.2px;margin:55px 0 30px}.deck{max-width:390px;color:var(--muted);margin-bottom:50px}.work{display:grid;grid-template-columns:45px 1fr 190px;gap:20px;align-items:center;border-top:1px solid var(--line);padding:32px 0;transition:padding .3s,background .3s}.work:last-child{border-bottom:1px solid var(--line)}.work:hover{padding-left:15px;background:#e3e5da}.work h3{font-size:42px}.work p{font-size:13px;color:var(--muted);margin-top:10px}.work>span{font-size:9px;letter-spacing:1px}.about{background:#e2e4d8;max-width:none;display:grid;grid-template-columns:1fr 2.1fr;gap:30px;padding-block:100px}.about>small{padding-top:15px}.about .big{margin-top:0}.bio{columns:2;column-gap:40px;color:#4c5348;font-size:14px}.bio p{break-inside:avoid;margin-bottom:22px}.lead{font-size:22px!important;line-height:1.45;color:var(--ink)!important;letter-spacing:-.4px}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-top:1px solid #b8beab;padding-top:25px;margin-top:35px}.timeline b{font-family:var(--serif);font-size:37px;font-weight:400}.timeline p{font-size:11px;margin-top:8px;color:#59604e}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:55px}.twocol .big{margin:0}.twocol p{max-width:460px;margin-bottom:23px;color:var(--muted)}ul{list-style:none;padding:0;margin:30px 0;font-size:12px;max-width:460px}li{padding:12px 0;border-top:1px solid var(--line)}li:last-child{border-bottom:1px solid var(--line)}.stories{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:55px}.stories article{border-top:1px solid var(--line);padding-top:20px;display:flex;flex-direction:column;align-items:start}.number{font-family:var(--serif);font-size:95px;line-height:1;color:#b0b99d;margin-bottom:30px}.stories small{font-size:8px;margin-bottom:16px}.stories h3{font-size:36px;letter-spacing:-.7px;line-height:1.1}.stories p{font-size:13px;color:var(--muted);margin:20px 0 28px;max-width:290px}.stories button{margin-top:auto}.faq{display:grid;grid-template-columns:1fr 2.1fr;gap:30px}.faq>small{padding-top:20px}details{padding:20px 0;border-top:1px solid var(--line)}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between}summary:after{content:'+';font-size:22px}summary::-webkit-details-marker{display:none}details[open] summary:after{content:'−'}details p{color:var(--muted);font-size:14px;margin-top:20px;max-width:600px}details a{text-decoration:underline}#contact{background:var(--ink);color:var(--paper);max-width:none;padding-block:70px}#contact>small{color:#b7c09f}#contact h2{font-size:clamp(64px,9vw,135px);letter-spacing:-3px;margin:45px 0 65px}#contact em{color:#bcc7a2}#contact>div:last-child{border-top:1px solid #51574b;padding-top:28px;display:flex;justify-content:space-between;align-items:end}#contact a{font-size:clamp(18px,2.4vw,32px);letter-spacing:-.5px}#contact p{font-size:12px;color:#c3c6bb}footer{min-height:140px;gap:25px;font-size:11px}footer>span{font-size:8px;letter-spacing:1px}footer small{font-size:9px;letter-spacing:0;color:var(--muted)}dialog{border:0;background:var(--paper);color:var(--ink);width:min(900px,95vw);height:90vh;max-height:90vh;padding:35px 65px 65px;overflow:auto}dialog::backdrop{background:#1e231bc9;backdrop-filter:blur(7px)}body:has(dialog[open]){overflow:hidden}.readerbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px;font-size:9px;letter-spacing:1px}.readerbar button{border:0;background:none;font-size:12px;padding:8px}#storybody h2{font-size:clamp(42px,6vw,70px);letter-spacing:-1px;margin:40px 0 28px}#storybody p{font-size:16px;line-height:1.85;margin:0 0 25px;color:#555c4f}#storybody h3{font-size:31px;margin:35px 0 15px}@media(max-width:900px){nav{gap:20px}nav a:last-child{margin-left:5px}.hero h1 span{right:4%;font-size:60px}.about,.faq{grid-template-columns:1fr}.stories{gap:24px}.stories h3{font-size:29px}footer>span{display:none}.work{grid-template-columns:30px 1fr 150px}.work>span{font-size:8px}.intro h2{font-size:48px}}@media(max-width:600px){header{height:78px}.logo{font-size:32px}nav{font-size:11px;gap:16px}nav a:nth-child(3){display:none}section{padding:65px 6%}.hero{padding-top:35px}.hero>small{font-size:8px}.hero h1{font-size:20vw;letter-spacing:-3px}.hero h1 span{font-size:35px;right:0;bottom:4px}.herofoot{gap:15px;margin-top:35px}.herofoot p{font-size:11px}.herofoot small{display:none}.herofoot a{font-size:10px;gap:10px}.herofoot b{width:34px;height:34px;font-size:18px}.intro{grid-template-columns:1fr;gap:35px;padding-top:15px}.intro h2{font-size:53px}.intro p{font-size:14px}.big{font-size:56px;letter-spacing:-1.7px;margin-top:40px}.sectionhead>span:last-child{display:none}.deck{font-size:13px;margin-bottom:35px}.work{grid-template-columns:22px 1fr;gap:12px;padding-block:28px}.work>span{grid-column:2;margin-top:4px}.work h3{font-size:32px}.work p{font-size:11px}.bio{columns:1}.timeline{gap:14px}.timeline b{font-size:30px}.timeline p{font-size:10px}.twocol{grid-template-columns:1fr;gap:30px;margin-top:40px}.stories{grid-template-columns:1fr;gap:40px}.stories article{padding-left:65px;position:relative}.number{position:absolute;left:0;top:20px;font-size:60px}.stories h3{font-size:34px}.stories p{max-width:none}.faq{gap:20px}summary{font-size:14px}#contact h2{font-size:64px;letter-spacing:-2px}#contact>div:last-child{display:block}#contact a{font-size:20px}#contact p{margin-top:25px}footer{flex-wrap:wrap;padding-block:30px;gap:20px}footer .logo{width:100%}footer small{margin-left:auto}dialog{padding:22px 25px 40px}.readerbar{font-size:7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.opening-photo{padding-top:30px;padding-bottom:20px}.opening-photo figure{position:relative}.opening-photo img{width:100%;height:min(72vw,760px);object-fit:cover;display:block}.filters{display:flex;gap:10px;margin:35px 0 50px;flex-wrap:wrap}.filters button{border:1px solid var(--line);border-radius:30px;padding:9px 23px;background:transparent;font-size:12px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 5%;align-items:start}.photo:nth-child(6n+2){margin-top:100px}.photo:nth-child(6n+3){grid-column:1/-1;width:76%;margin:10px auto}.photo[hidden]{display:none}.photo button{display:block;border:0;padding:0;background:#deddd5;width:100%;position:relative;overflow:hidden}.photo img{display:block;width:100%;height:auto;max-height:760px;object-fit:contain;transition:transform .7s}.photo button:hover img{transform:scale(1.018)}.photo figcaption{position:static;color:var(--muted);text-shadow:none;margin-top:14px;font-size:9px;text-transform:uppercase}.zoommark{position:absolute;right:15px;bottom:15px;background:var(--paper);border-radius:50%;height:36px;width:36px;display:grid;place-items:center}.image-credit{font-size:10px;color:var(--muted);text-align:center;margin-top:50px}#photoreader{background:#171b16;color:var(--paper);width:96vw;max-width:1600px;height:96vh;max-height:96vh;padding:18px 25px;overflow:auto}#photoreader[open]{display:flex;flex-direction:column;align-items:center}.photobar{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:12px}.photobar button,.photofooter button{border:0;background:none;color:inherit;padding:10px}.photofooter button{font-size:26px}.photofooter{display:flex;align-items:center;justify-content:space-between;width:100%;gap:20px;font-size:12px}#largephoto{width:100%;height:calc(96vh - 155px);object-fit:contain;min-height:0}#photoreader small{font-size:9px;color:#b7bdad;letter-spacing:.4px}#photocaption{text-align:center}#beeldrechten{font-size:9px}@media(max-width:600px){.gallery{gap:35px 18px}.photo:nth-child(6n+2){margin-top:50px}.photo:nth-child(6n+3){width:100%}.photo figcaption{font-size:7px;letter-spacing:.4px}.photo figcaption span:last-child{display:none}.filters{gap:8px;margin-bottom:30px}.filters button{padding:8px 16px}.opening-photo img{height:65vh;object-position:43% center}.opening-photo figcaption{font-size:7px;left:12px;right:12px}.opening-photo figcaption span:last-child{display:none}#photoreader{padding:12px}#photocaption{font-size:10px}}

.logo{display:block;line-height:1}.logo img{display:block;width:105px;height:auto}header{height:110px}footer .logo img{width:100px}@media(max-width:600px){.logo img{width:72px}header{height:85px}footer .logo{width:auto}}
@media(max-width:600px){.opening-photo img{height:auto;object-fit:contain}.opening-photo figcaption{font-size:6px;bottom:12px}}

/* Photography is viewed directly, without captions, crops or a modal. */
#werk{max-width:none;padding-left:2.5%;padding-right:2.5%}#werk>.sectionhead,#werk>.big,#werk>.deck,#werk>.filters{margin-left:2.65%;margin-right:2.65%}.gallery{display:flex;flex-direction:column;gap:70px}.gallery .photo,.gallery .photo:nth-child(6n+2),.gallery .photo:nth-child(6n+3){width:100%;margin:0}.gallery .photo[hidden]{display:none}.gallery .photo img{width:100%;height:auto;max-height:none;object-fit:contain;transform:none}.opening-photo{max-width:none;padding-left:2.5%;padding-right:2.5%}.opening-photo img{width:100%;height:auto;object-fit:contain}@media(max-width:600px){.gallery{gap:24px}#werk{padding-left:3%;padding-right:3%}.opening-photo{padding-left:3%;padding-right:3%}}

.portfolio-v2 header{height:95px;padding:0 4%;border:0}.portfolio-v2 nav{gap:30px}.portfolio-v2 nav a:last-child{margin-left:0}.portfolio-v2 nav a:nth-child(3){display:block}.visual-hero{padding:20px 2.5% 70px;max-width:none}.hero-label{display:flex;align-items:center;justify-content:space-between;padding:0 1.5% 25px;gap:20px}.hero-label h1{font-size:clamp(25px,3.1vw,46px);letter-spacing:-.7px}.hero-label span{font-size:8px;letter-spacing:1.2px}.hero-diptych{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center;background:#e9e7e0}.hero-diptych img{display:block;width:100%;height:auto}.portfolio-v2 #werk{padding:0}.collection{padding:35px 2.5% 65px;max-width:none}.collection-title{display:flex;align-items:center;justify-content:space-between;padding:0 1.5% 25px}.collection-title h2{font-size:clamp(35px,4.3vw,62px);letter-spacing:-1px}.collection-title small{font-size:8px}.collection-images{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.collection-images figure:first-child{grid-column:1/-1}.collection-images img,.personal-images img{width:100%;height:auto;display:block}.collection-images.portraits{grid-template-columns:repeat(3,1fr)}.collection-images.portraits figure:first-child{grid-column:auto}.compact-about{padding:100px 10%;display:grid;grid-template-columns:1fr 1.5fr;gap:12%;align-items:center;max-width:1300px}.about-photo img{display:block;width:100%;height:auto}.compact-about h2{font-size:clamp(42px,5vw,66px);margin:20px 0}.compact-about p{font-size:14px;color:var(--muted);max-width:470px;margin-bottom:18px}.background-stories{margin-top:25px}.background-stories summary{font-size:12px}.quiet-stories{display:flex;flex-direction:column;align-items:start;gap:15px;padding:20px 0 0}.quiet-stories button{background:none;border:0;padding:0;font-size:12px}.personal{padding:30px 10% 80px;max-width:1400px}.personal .collection-title{padding-inline:0}.personal h2{font-size:35px}.personal-images{display:grid;grid-template-columns:1fr 1fr;gap:20px}.portfolio-v2 #contact.quiet-contact{padding:55px 5%;display:flex;flex-direction:column;align-items:center;gap:20px;background:var(--paper);color:var(--ink);border-top:1px solid var(--line)}.quiet-contact small{color:var(--muted)!important;font-size:8px}.portfolio-v2 #contact a{font-family:var(--serif);font-size:clamp(25px,4.5vw,62px)}.portfolio-v2 footer{min-height:75px;padding:20px 5%;font-size:10px}.portfolio-v2 footer>span{display:block;letter-spacing:0;font-size:9px}@media(max-width:650px){.portfolio-v2 header{height:80px}.portfolio-v2 nav{gap:20px}.hero-label{display:block}.hero-label h1{font-size:30px}.hero-label span{display:block;margin-top:12px;font-size:7px}.visual-hero{padding-top:10px;padding-bottom:35px}.hero-diptych{gap:10px}.collection{padding-top:20px;padding-bottom:40px}.collection-images{gap:12px}.collection-images.portraits{grid-template-columns:1fr 1fr}.collection-images.portraits figure:first-child{grid-column:1/-1;width:75%;margin:auto}.collection-title{padding-bottom:20px}.collection-title small{font-size:7px}.compact-about{padding:50px 6%;gap:30px;grid-template-columns:1fr}.about-photo{width:45%}.compact-about h2{font-size:45px}.personal{padding:30px 5% 50px}.personal h2{font-size:28px}.personal-images{gap:12px}.personal .collection-title{align-items:baseline}.portfolio-v2 footer{flex-wrap:nowrap;gap:20px}}
/* Neutral gallery palette: image colours remain the focus. */
:root{--paper:#f7f7f5;--ink:#242424;--muted:#70706e;--line:#dededb;--olive:#666664}
body{background:var(--paper)}
::selection{background:#dededb}
.hero-diptych{background:transparent;gap:24px;align-items:stretch}
.hero-diptych figure{display:flex;align-items:center;background:#fff;padding:14px;border:1px solid #e3e3df}
.collection-images figure,.personal-images figure{padding:12px;background:#fff;border:1px solid #e3e3df}
.hero-diptych img,.collection-images img,.personal-images img{flex:none}
.portfolio-v2 .compact-about{background:transparent}
.portfolio-v2 .about-photo{padding:10px;background:#fff;border:1px solid #e3e3df}
.portfolio-v2 .quiet-contact{background:var(--paper)}
.portfolio-v2 nav a:hover{color:#747472}
@media(max-width:650px){.hero-diptych{gap:12px}.hero-diptych figure{padding:7px}.collection-images figure,.personal-images figure{padding:7px}.portfolio-v2 .about-photo{padding:7px}}

/* Group photographs by their native proportions, without cropping. */
.hero-diptych{align-items:start}.hero-diptych figure{display:block}.hero-diptych img{width:100%;height:auto}
.collection-images{align-items:start}.collection-images:not(.portraits) figure:first-child{grid-column:1/-1}
.collection:nth-child(2) .collection-images{grid-template-columns:1fr}.collection:nth-child(2) .collection-images figure{grid-column:1/-1}
.collection:nth-child(3) .collection-images{grid-template-columns:1fr 1fr}
.collection-images.portraits{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.collection-images.portraits figure,.collection-images.portraits figure:first-child{grid-column:auto;width:100%;margin:0}
.personal-images{align-items:start}
@media(max-width:650px){.collection-images.portraits{grid-template-columns:1fr}.collection-images.portraits figure,.collection-images.portraits figure:first-child{width:100%;grid-column:auto}.collection:nth-child(3) .collection-images{grid-template-columns:1fr 1fr}}

/* Preserve original framing in every photography layout. */
.portfolio-v2 .hero-diptych img,.portfolio-v2 .collection-images img,.portfolio-v2 .personal-images img,.portfolio-v2 .about-photo img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;transform:none}
.portfolio-v2 .hero-diptych figure,.portfolio-v2 .collection-images figure,.portfolio-v2 .personal-images figure{height:auto;aspect-ratio:auto;overflow:visible}

.collection-images.portraits{grid-template-columns:1fr}.collection-images.portraits figure,.collection-images.portraits figure:first-child{width:min(100%,700px);margin-inline:auto}@media(max-width:650px){.collection-images.portraits figure,.collection-images.portraits figure:first-child{width:100%}}

.personal-images{align-items:stretch}.personal-images figure{height:clamp(220px,32vw,480px)!important;display:flex;align-items:center;justify-content:center}.portfolio-v2 .personal-images img{width:100%;height:100%;object-fit:contain}.rotation-controls{display:flex;align-items:center;justify-content:space-between;margin-top:18px;color:var(--muted);font-size:11px}.rotation-controls>div{display:flex;align-items:center;gap:16px}.rotation-controls button{border:0;background:none;padding:10px;font-size:12px}.rotation-controls button:first-child,.rotation-controls button:last-child{font-size:22px}@media(max-width:650px){.personal-images figure{height:250px!important}}

/* Portrait and square opening: equal visual height, native framing. */
.hero-diptych{grid-template-columns:2fr 3fr;align-items:start}.hero-diptych figure{padding:10px}.hero-diptych img{width:100%;height:auto;object-fit:contain}.collection:nth-child(3) .collection-images figure:last-child{grid-column:1/-1;width:min(100%,850px);margin-inline:auto}@media(max-width:650px){.hero-diptych{grid-template-columns:2fr 3fr;gap:10px}.hero-diptych figure{padding:6px}}
/* Matching hero frames; preserve the entire original photograph inside. */
.portfolio-v2 .hero-diptych{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:20px}
.portfolio-v2 .hero-diptych figure{display:flex;align-items:center;justify-content:center;width:100%;height:auto;aspect-ratio:1/1;padding:12px;overflow:visible;background:#fff;border:1px solid #e3e3df}
.portfolio-v2 .hero-diptych img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;aspect-ratio:auto;transform:none}
@media(max-width:650px){.portfolio-v2 .hero-diptych{gap:10px}.portfolio-v2 .hero-diptych figure{padding:7px}}
