:root{color-scheme:light;--ink:#172027;--muted:#657079;--paper:#fff;--line:#dddcd7}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #995c32;outline-offset:5px}
header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:27px 5vw;background:white;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:21px;font-weight:800;letter-spacing:-1px;line-height:1.3}.brand span{color:#aaa}.preview-label{text-decoration:none;color:var(--muted);font-size:13px}
main{max-width:1440px;margin:auto;padding:35px 5vw 70px}.page-heading{padding:20px 0 32px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;color:var(--muted);margin:0 0 10px}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(34px,5vw,60px);line-height:1.15;margin:0 0 20px}h2{font-weight:500}.introduction{max-width:650px;font-size:17px;color:var(--muted);margin:0}.back{font-size:13px;text-decoration:none;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 24px}.card{text-decoration:none;display:block}.card img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;transition:filter .2s}.card:hover img{filter:brightness(.92)}.card-text{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:12px}.card h2{font-size:17px;margin:0}.card span{color:var(--muted);font-size:11px;white-space:nowrap}
figure{margin:0}figure>a{display:block}figure img{display:block;width:100%;height:auto}.single figure>a{background:#eae8e3}.single img{max-height:75vh;object-fit:contain}.single figcaption{display:none}.single figcaption h2{display:none}figcaption h2{font-size:19px;margin:15px 0 6px}
.collection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 26px}.collection img{aspect-ratio:1;object-fit:contain;background:#eae8e3}.collection figcaption{max-width:550px}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin:0 5vw;padding:26px 0;color:var(--muted);font-size:12px}footer a{text-decoration:none}
dialog{width:min(1200px,96vw);max-height:96dvh;padding:18px 22px;background:#11181d;color:#fff;border:0;border-radius:4px}dialog::backdrop{background:rgba(7,12,16,.92)}.viewer-top,.viewer-bottom,.viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:15px}.viewer-top{margin-bottom:12px}.viewer-count{font-size:12px;color:#b8c0c6}.viewer-image{display:block;width:100%;height:min(65dvh,750px);object-fit:contain}.viewer-bottom{padding-top:12px}.viewer-title{font-family:Georgia,serif;font-size:20px;margin:0}.viewer-controls{flex-shrink:0}dialog button{background:transparent;color:#fff;border:1px solid #69737a;border-radius:3px;min-height:44px;min-width:44px;font-size:20px;cursor:pointer}.viewer-close{border:0;font-size:28px}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card-text{display:block}.card span{display:block;margin-top:3px}}
@media(max-width:600px){header{padding:22px 5vw}.brand{font-size:17px}main{padding-top:24px}.page-heading{padding-top:15px}.cards,.collection{grid-template-columns:1fr;gap:30px}.introduction{font-size:15px}.viewer-bottom{align-items:flex-start;flex-direction:column}.viewer-image{height:55dvh}dialog{padding:12px}footer{font-size:11px}}
@media(prefers-reduced-motion:reduce){.card img{transition:none}}

/* Production navigation uses the site's existing brand. Captions are opt-in per page. */
.photo-caption{padding-top:12px;font-size:14px;color:var(--muted);white-space:pre-line;overflow-wrap:anywhere}.single .photo-caption{display:block}.viewer-caption{margin:10px 0 0;color:#b8c0c6;font-size:14px;white-space:pre-line;overflow-wrap:anywhere}
.brand img{display:block;width:min(330px,45vw);height:auto}header nav{display:flex;align-items:center;gap:clamp(20px,4vw,60px)}header nav a{text-decoration:none;text-transform:uppercase;font-size:14px;font-weight:600}.menu-toggle{display:none;border:0;background:transparent;font-size:25px;min-height:44px;min-width:44px;cursor:pointer}.collection{gap:26px}.collection figure{min-width:0}
@media(max-width:700px){header{flex-wrap:wrap}.brand img{width:min(280px,70vw)}.menu-toggle{display:block}header nav{width:100%;flex-wrap:wrap;justify-content:space-between;gap:12px}.navigation-ready header nav{display:none}.navigation-ready header nav.is-open{display:flex}}

/* Neighboring portfolio entries remain ordinary links, including without scripts. */
.entry-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:42px;padding-top:24px;border-top:1px solid var(--line)}
.entry-navigation a{display:flex;flex-direction:column;gap:6px;min-width:0;min-height:44px;text-decoration:none;overflow-wrap:anywhere}
.entry-direction{font-size:13px;color:var(--muted)}.entry-title{font-size:16px}.entry-next{grid-column:2;text-align:right}.entry-navigation a:hover .entry-title{text-decoration:underline}
