@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400&family=Noto+Serif+SC:wght@300;400;500&display=swap');
:root{--paper:#f4f0e8;--ink:#302c29;--red:#993e37;--muted:#8c8076;--gap:clamp(10px,1.2vw,20px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Serif SC',Georgia,serif}a{color:inherit;text-decoration:none}.hero{height:100svh;min-height:550px;position:relative;background:#777;overflow:hidden;color:white}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 35%;animation:drift 24s ease-in-out infinite alternate}.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,25,23,.34),rgba(28,25,23,.04) 30%,rgba(28,25,23,.32) 100%)}.hero-top,.hero-bottom{position:absolute;left:clamp(20px,4vw,64px);right:clamp(20px,4vw,64px);display:flex;justify-content:space-between;font:500 10px/1.4 Georgia,serif;letter-spacing:.2em}.hero-top{top:30px}.hero-bottom{bottom:28px}.hero-title{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;text-shadow:0 2px 30px #0008}.eyebrow,.chapter-head span{font:500 10px/1.4 Georgia,serif;letter-spacing:.3em}.hero h1{font:400 clamp(82px,13vw,190px)/.85 'Cormorant Garamond',Georgia,serif;letter-spacing:-.035em;margin:15px 0 26px}.subtitle{font-size:14px;letter-spacing:.25em}.enter{margin-top:45px;font-size:11px;letter-spacing:.3em;display:grid;justify-items:center;gap:18px}.enter span{height:42px;width:1px;background:#fffc}.intro{text-align:center;padding:clamp(90px,15vw,180px) 20px}.intro .eyebrow,.chapter-head span{color:var(--red)}.intro h2,footer h2{font:italic 400 clamp(45px,7vw,82px)/1 'Cormorant Garamond',Georgia,serif;margin:22px 0}.intro>p:last-of-type,.chapter-head p,footer p{font-size:13px;letter-spacing:.15em;color:var(--muted)}.line{width:50px;height:1px;background:#bcaea0;margin:34px auto 0}.chapter{max-width:1500px;margin:auto;padding:0 clamp(12px,4vw,64px)}.chapter-head{text-align:center;margin-bottom:clamp(40px,7vw,90px)}.chapter-head h2{font:400 clamp(56px,9vw,110px)/.9 'Cormorant Garamond',Georgia,serif;margin:18px 0}.gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--gap);align-items:start}.photo{grid-column:span 2;margin:0;cursor:zoom-in;border:0;padding:0;background:none;display:block;width:100%;overflow:hidden}.photo:nth-child(5n+1),.photo:nth-child(5n+2){grid-column:span 3}.photo img{display:block;width:100%;height:auto;transition:transform .7s ease}.photo:hover img{transform:scale(1.025)}.interlude{text-align:center;padding:clamp(100px,16vw,200px) 20px}.interlude span{font-size:24px;color:var(--red)}.interlude p{font:400 clamp(32px,5vw,60px)/1.1 'Cormorant Garamond',Georgia,serif}.interlude small{color:var(--muted);letter-spacing:.18em;font-size:11px}footer{text-align:center;padding:clamp(110px,18vw,210px) 20px 70px}footer a{display:inline-block;margin-top:55px;font:11px Georgia,serif;letter-spacing:.2em;border-bottom:1px solid #aca095;padding-bottom:8px}dialog{border:0;padding:0;max-width:none;max-height:none;width:100%;height:100%;background:rgba(20,18,17,.96);color:white}dialog::backdrop{background:#111}dialog[open]{display:flex;align-items:center;justify-content:center}dialog img{max-width:calc(100vw - 110px);max-height:calc(100dvh - 100px);object-fit:contain}dialog button{position:absolute;border:0;background:none;color:white;font:300 40px Georgia;cursor:pointer;padding:12px}.close{right:20px;top:10px}.prev{left:12px;top:45%}.next{right:12px;top:45%}.count{position:absolute;bottom:25px;font:12px Georgia;letter-spacing:.2em;color:#ccc}@keyframes drift{to{transform:scale(1.08)}}@media(max-width:650px){.hero>img{object-position:center}.hero-top,.hero-bottom{font-size:9px}.hero-bottom span{display:none}.gallery{grid-template-columns:repeat(2,1fr)}.photo,.photo:nth-child(5n+1),.photo:nth-child(5n+2){grid-column:span 1}.photo:nth-child(5n+1){grid-column:span 2}.chapter{padding:0 10px}.intro{padding:100px 20px}dialog img{max-width:calc(100vw - 55px)}dialog button{padding:5px}.prev{left:2px}.next{right:2px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero>img{animation:none}.photo img{transition:none}}

/* Keep individual portraits together and give each collage its own quiet page. */
.photo:nth-child(5n+1),.photo:nth-child(5n+2){grid-column:span 2}
.photo.collection,.photo.collection:nth-child(n){grid-column:1 / -1;width:min(100%,600px);justify-self:center;margin:clamp(55px,9vw,120px) auto 0;overflow:visible}
.collection-label{display:block;margin-bottom:20px;color:var(--muted);font:500 10px/1.5 Georgia,serif;letter-spacing:.22em;text-align:center}
@media(max-width:650px){.photo,.photo:nth-child(5n+1),.photo:nth-child(5n+2){grid-column:span 1}.photo.collection,.photo.collection:nth-child(n){grid-column:1 / -1;width:min(82%,440px);margin-top:65px}}
