/* Actual Ace job photography, from rough-in through final installation. */
.project-feature{padding:100px 6%;background:#f3f4f1;border-top:1px solid #d8dcda}
.project-feature-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:12px 8%;margin-bottom:45px;align-items:end}
.project-feature-heading .eyebrow{grid-column:1/-1;color:var(--red);margin:0 0 10px}
.project-feature-heading h2{font-size:clamp(48px,5vw,78px);font-weight:500;margin:0;grid-row:2/4}
.project-feature-heading>p:not(.eyebrow){font-size:18px;color:var(--muted);max-width:540px;margin:0}
.project-feature-heading>a{justify-self:start;margin-top:10px}
.project-feature-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px}
.project-feature-photos figure{margin:0;min-width:0}
.project-feature-photos img{width:100%;height:440px;object-fit:cover;object-position:center}
.project-feature-photos figure:only-child{grid-column:1/-1}
.project-feature-photos figcaption{font-size:15px;margin-top:15px;line-height:1.5}
.project-feature-photos figcaption>span{display:block;color:var(--red);font-size:12px;letter-spacing:.09em;text-transform:uppercase;margin-bottom:6px}
.project-gallery .gallery-grid{display:block;columns:3;column-gap:28px}
.project-gallery .gallery-item{display:inline-block;width:100%;break-inside:avoid;margin:0 0 36px}
.project-gallery .gallery-item[hidden]{display:none}
.project-gallery .gallery-open img{height:auto;width:100%;object-fit:contain}
.project-gallery .gallery-item h2{font-family:'DM Sans',Arial,sans-serif;font-size:18px;line-height:1.4;letter-spacing:-.02em;margin-top:8px}
.project-gallery .gallery-item figcaption{padding-top:13px}
.project-gallery .gallery-item .eyebrow{font-size:11px}
.project-gallery .gallery-toolbar{align-items:flex-start;gap:25px;border-bottom:1px solid var(--line);margin-bottom:35px;flex-wrap:wrap}
.project-gallery .filters{gap:8px}
.project-gallery .filters button{padding:10px 15px;font-size:14px}
.project-gallery #gallery-count{white-space:nowrap;padding-top:10px}
.gallery-context{font-size:14px;color:var(--muted);max-width:620px;margin-top:24px}
.hero-backdrop img{object-position:63% 48%}
@media(max-width:1000px){.project-gallery .gallery-grid{columns:2}.project-feature-photos img{height:360px}}
@media(max-width:760px){.project-feature{padding:60px 6%}.project-feature-heading{display:block;margin-bottom:30px}.project-feature-heading h2{font-size:50px;margin:20px 0}.project-feature-heading>p:not(.eyebrow){font-size:16px;margin-bottom:22px}.project-feature-photos{gap:30px;grid-template-columns:1fr}.project-feature-photos img{height:auto;max-height:560px;object-fit:contain;background:#e9ece7}.project-gallery .gallery-grid{columns:2;column-gap:15px}.project-gallery .gallery-item h2{font-size:15px}.project-gallery .gallery-item .eyebrow{font-size:10px;letter-spacing:.05em}.project-gallery .gallery-open>span{bottom:8px;right:8px;font-size:11px;padding:5px 8px}.project-gallery .filters button{font-size:13px;padding:9px 12px}.project-gallery-intro h1{font-size:58px}.hero-backdrop img{object-position:62% 48%}}
@media(max-width:430px){.project-gallery .gallery-grid{columns:1}.project-gallery .gallery-item h2{font-size:18px}.project-gallery .gallery-item .eyebrow{font-size:12px}}

.project-feature-photos img.portrait{object-fit:contain;background:#e5e8e3}
