.siding-gallery,.portfolio-gallery{column-count:4;column-gap:20px}.siding-shot,.portfolio-shot{display:block;break-inside:avoid;margin:0 0 20px;background:transparent;border:0;overflow:hidden;line-height:0}.siding-shot img,.portfolio-shot img{display:block;width:100%;height:auto;transition:opacity .2s}.siding-shot:hover img,.portfolio-shot:hover img{opacity:.85}.siding-shot:focus-visible,.portfolio-shot:focus-visible{outline:3px solid #842326;outline-offset:4px}.photo-viewer{border:0;padding:65px 60px 45px;background:#171a1b;color:white;width:96vw;max-width:1400px;height:94vh;max-height:94vh}.photo-viewer::backdrop{background:#000d}.photo-viewer img{width:100%;height:calc(100% - 25px);object-fit:contain}.photo-viewer button{position:absolute;background:#26292a;color:white;border:1px solid #ffffff60;cursor:pointer;min-height:44px;min-width:44px}.viewer-close{top:12px;right:16px;padding:8px 16px}.viewer-prev{left:8px;top:48%;font-size:2rem}.viewer-next{right:8px;top:48%;font-size:2rem}.viewer-count{text-align:center;margin:8px 0;font-size:.85rem}@media(max-width:900px){.siding-gallery,.portfolio-gallery{column-count:3}}@media(max-width:700px){.siding-gallery,.portfolio-gallery{column-count:2;column-gap:12px}.siding-shot,.portfolio-shot{margin-bottom:12px}.photo-viewer{padding:64px 45px 40px;width:100vw;height:90vh}}
.siding-gallery,.portfolio-gallery{column-count:auto;display:flex;flex-direction:column;gap:20px}.gallery-row{display:flex;gap:20px;align-items:flex-start}.gallery-row .siding-shot,.gallery-row .portfolio-shot{flex-basis:0;min-width:0;margin:0}.gallery-row img{width:100%;height:auto}@media(max-width:700px){.siding-gallery,.portfolio-gallery,.gallery-row{gap:12px}}
