.projects-section{background:#f5f4f0;padding:80px 0 60px;margin-top:20px}.projects-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.projects-heading h2{font-size:clamp(32px,4vw,50px);font-weight:500;letter-spacing:-.035em;margin:8px 0 0}.projects-eyebrow{font-size:11px;letter-spacing:.18em;color:#716c63;margin:0}.projects-heading>p{max-width:350px;line-height:1.65;color:#625e57;margin:0}
.project-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}.project-filters button,.project-more button{font:inherit;border:1px solid #cecac2;border-radius:999px;background:transparent;padding:10px 18px;cursor:pointer;color:#282723}.project-filters button[aria-pressed=true],.project-more button{background:#22221e;color:#fff;border-color:#22221e}.project-grid{columns:3;column-gap:16px}.project-tile{display:block;break-inside:avoid;width:100%;padding:0;margin:0 0 16px;border:0;background:#e6e3dc;border-radius:10px;overflow:hidden;position:relative;cursor:zoom-in;text-align:left}.project-tile img{display:block;width:100%;height:auto;transition:transform .25s}.project-tile:hover img{transform:scale(1.025)}.project-caption{display:block;background:white;color:#5a564e;font-size:12px;padding:13px 15px;line-height:1.4}.project-more{text-align:center;margin-top:25px}.project-more p{font-size:12px;color:#777268;margin-top:14px}.project-more button[hidden]{display:none}
#project-lightbox{border:0;padding:50px 58px 25px;background:#171714;color:white;border-radius:12px;max-width:96vw;max-height:95dvh;width:min(1100px,96vw);box-sizing:border-box}#project-lightbox::backdrop{background:rgba(0,0,0,.85)}#project-lightbox figure{margin:0}#project-lightbox img{display:block;margin:auto;max-width:100%;max-height:75dvh;object-fit:contain}#project-lightbox figcaption{text-align:center;font-size:14px;line-height:1.5;padding-top:15px}#project-lightbox button{position:absolute;border:0;color:white;background:#3338;width:44px;height:44px;font-size:32px;cursor:pointer;border-radius:50%}.project-close{right:8px;top:5px}.project-prev{left:6px;top:45%}.project-next{right:6px;top:45%}.project-tile:focus-visible,.project-filters button:focus-visible,.project-more button:focus-visible,#project-lightbox button:focus-visible{outline:3px solid #b77932;outline-offset:3px}
@media(max-width:760px){.projects-section{padding:48px 0 35px}.projects-heading{display:block}.projects-heading>p{margin-top:16px}.project-grid{columns:2;column-gap:10px}.project-tile{margin-bottom:10px}.project-caption{padding:10px;font-size:11px}.project-filters{gap:6px}.project-filters button{font-size:12px;padding:10px 12px}#project-lightbox{padding:50px 34px 20px}#project-lightbox button{width:32px;height:40px}.project-prev{left:0}.project-next{right:0}}@media(max-width:380px){.project-grid{columns:1}}@media(prefers-reduced-motion:reduce){.project-tile img{transition:none}}

/* Keep natural image proportions in a compact, varied gallery. */
.project-grid{display:block;columns:4;column-gap:12px}
.project-tile{margin:0 0 12px;break-inside:avoid}
.project-tile img{height:auto;aspect-ratio:auto;object-fit:contain}
.project-caption{padding:10px 12px}
@media(max-width:1000px){.project-grid{columns:3}}
@media(max-width:760px){.project-grid{columns:2;column-gap:8px}.project-tile{margin-bottom:8px}.project-caption{padding:8px;font-size:11px}}
@media(max-width:380px){.project-grid{columns:1}}
.project-album-badge{position:absolute;top:12px;left:12px;max-width:calc(100% - 24px);box-sizing:border-box;background:rgba(23,23,20,.9);color:#fff;border-radius:999px;padding:8px 12px;font-size:12px;line-height:1.4;pointer-events:none}
#project-lightbox button[hidden]{display:none}
@media(max-width:760px){.project-album-badge{top:8px;left:8px;max-width:calc(100% - 16px);font-size:10px;padding:6px 9px}}
