:root{font-family:Inter,system-ui,sans-serif;color:#21302a;background:#f6f1e7}*{box-sizing:border-box}body{margin:0;background:#f6f1e7}header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:14px 22px;background:#fffdf8;border-bottom:1px solid #d9e0da;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}.brand span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#183c2d;color:white;font-family:Georgia,serif;font-weight:800}nav{display:flex;gap:1rem;flex-wrap:wrap;font-weight:800}nav a.active{color:#a45437}main{max-width:1300px;margin:auto;padding:50px 20px 80px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:900;color:#93472d;margin:0}h1,h2{font-family:Georgia,serif}h1{font-size:clamp(3rem,8vw,6rem);line-height:.92;margin:.5rem 0}.intro{color:#6b756f;font-size:1.1rem}.album{margin-top:38px;background:#fffdf8;border:1px solid #d9e0da;border-radius:24px;padding:20px}.album-head{display:flex;justify-content:space-between;gap:1rem;align-items:start}.album h2{font-size:2rem;margin:0}.album-head p{color:#6b756f}.album-head span{background:#e8eee9;border-radius:999px;padding:.4rem .7rem;font-size:.75rem;font-weight:850}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin-top:18px}.photo{border:0;padding:0;border-radius:16px;overflow:hidden;background:#edf1ed;text-align:left}.photo img{width:100%;height:210px;object-fit:cover;display:block}.photo span{display:block;padding:.65rem;font-weight:750}dialog{border:0;border-radius:18px;padding:12px;background:#111;max-width:min(94vw,1000px)}dialog::backdrop{background:rgba(0,0,0,.75)}dialog img{max-width:88vw;max-height:78vh;display:block}#viewer-close{position:absolute;right:18px;top:16px;border:0;border-radius:50%;width:40px;height:40px;background:#fff;font-size:1.4rem}#viewer-caption{color:#fff;margin:.7rem 0 .2rem;text-align:center}@media(max-width:650px){header{padding:10px 14px}.brand strong{display:none}nav{font-size:.85rem;gap:.65rem}main{padding:32px 12px 60px}.album{padding:14px}.album-head{display:grid}.photo-grid{grid-template-columns:1fr 1fr;gap:8px}.photo img{height:150px}}