/* Real job-site photography, with a quiet editorial treatment. */
.gallery-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:36px}.gallery-intro h2{margin:0}.gallery-intro p{max-width:510px;margin:0;color:#655a51}.gallery-controls{margin-bottom:38px}.gallery-filters{display:flex;flex-wrap:wrap;gap:9px}.gallery-filters button{border:1px solid #b7aa9b;border-radius:0;padding:12px 16px;background:#faf7f0;color:#332a26;font:inherit;font-size:12px;cursor:pointer;min-height:44px}.gallery-filters button:hover{border-color:var(--red);color:var(--red)}.gallery-filters button[aria-pressed=true]{background:#282321;color:#fff;border-color:#282321;box-shadow:inset 0 -3px var(--red)}.gallery-status{font-size:12px;margin:18px 0 0;color:#655a51}.gallery-collection .project-grid{display:block;columns:3;column-gap:28px}.gallery-collection .project{display:inline-block;width:100%;margin:0 0 38px;break-inside:avoid}.gallery-collection .project[hidden]{display:none}.gallery-collection .project-photo{aspect-ratio:auto}.gallery-collection .project-photo img{height:auto;object-fit:contain}.gallery-collection .project figcaption{padding-top:16px}.gallery-collection .project h3{font-size:25px;line-height:1.16}.gallery-collection .project p{font-size:13px;line-height:1.75}.gallery-collection .project .eyebrow{font-size:8px;line-height:1.5;margin-bottom:9px}.gallery-more{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:25px;padding:20px 0 8px}.gallery-more[hidden],.gallery-controls[hidden]{display:none}.service-photo-pair{margin:32px 0 40px}.service-photo-pair .project-grid{gap:20px}.service-photo-pair .project-photo{aspect-ratio:1.15}.service-photo-pair .project h3{font-size:23px;margin:0 0 9px}.service-photo-pair .project p{font-size:13px;line-height:1.7}.service-photo-pair .project figcaption{padding-top:16px}.service-photo-pair>.text-link{margin-top:22px}.field-people{background:#eee7dc}.field-people .project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.homepage .project-grid{row-gap:40px}.hero-photo img{object-position:50% 47%}.service-heading.topic-maintenance figure img{object-position:50% 65%}
@media(max-width:1050px){.gallery-collection .project-grid{columns:2;column-gap:24px}.gallery-intro{gap:30px}.field-people .project-grid{gap:20px}}
@media(max-width:760px){.gallery-intro{grid-template-columns:1fr;gap:20px}.gallery-intro p{font-size:15px}.gallery-filters{gap:8px}.gallery-filters button{padding:10px 12px;font-size:11px}.gallery-collection .project-grid{columns:1}.gallery-collection .project{margin-bottom:34px}.gallery-collection .project-photo img{max-height:620px;object-fit:contain;background:#ddd6cc}.service-photo-pair .project-grid{grid-template-columns:1fr;gap:30px}.service-photo-pair .project-photo{aspect-ratio:auto}.service-photo-pair .project-photo img{height:auto;max-height:520px;object-fit:contain}.field-people .project-grid{grid-template-columns:1fr}.gallery-more{align-items:stretch;flex-direction:column;text-align:center}.gallery-more .button{justify-content:center}.hero-photo img{object-position:50% 44%}}
.gallery-more .button[hidden]{display:none}.gallery-collection .project{scroll-margin-top:120px}
