/* v55: scoped project gallery; existing site styles and breakpoints untouched. */
.project-work{margin-top:42px;padding-top:34px;border-top:1px solid var(--b)}
.project-work h3{font-size:clamp(1.5rem,2.5vw,2rem);margin:6px 0 24px}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.project-grid figure{margin:0;min-width:0;background:#fff;border:1px solid var(--b);border-radius:6px;overflow:hidden}
.project-grid a{display:block;background:var(--n);overflow:hidden}
.project-grid a:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}
.project-grid img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;display:block}
.project-grid figcaption{border-top:3px solid var(--gold);padding:14px 18px;color:var(--n);font-weight:600;font-size:.95rem;line-height:1.4}
@media(max-width:980px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:620px){.project-grid{grid-template-columns:1fr;gap:22px}.project-work{margin-top:30px;padding-top:28px}}

/* v56 supply strip and Rental project image, scoped to new media. */
.supply-project-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:28px;gap:20px}
.supply-project-grid img{aspect-ratio:4/3}
.grp img.rental-project-photo{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:4px;margin-top:12px}
@media(max-width:980px){.supply-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.supply-project-grid{grid-template-columns:1fr}}

.supply-project-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:620px){.supply-project-grid-three{grid-template-columns:1fr}}

.grp img.rental-project-photo{aspect-ratio:4/3;object-fit:contain;background:#fff}

/* Native keyboard-accessible project accordion, closed by default. */
.project-details{padding-top:0;border:1px solid var(--b);margin-top:34px}
.project-details .project-summary{flex-direction:row;align-items:center;padding:22px 26px;gap:20px}
.project-summary-title{font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.3;color:var(--n);font-weight:700}
.project-chevron{font-size:1.4rem;color:var(--gold);transition:transform .2s;flex-shrink:0}
.project-details[open] .project-chevron{transform:rotate(180deg)}
.project-details .project-grid{padding:0 26px 26px;margin-top:6px}
@media(max-width:620px){.project-details .project-summary{padding:20px 18px;gap:12px}.project-details .project-grid{padding:0 18px 18px}}

/* Full container picture is separate from the even company cards. */
.container-showcase{max-width:900px;margin:32px auto 0;border:1px solid var(--b);border-radius:12px;overflow:hidden;background:#fff}
.container-showcase img.container-showcase-photo{display:block;width:100%;height:auto;max-height:520px;aspect-ratio:4/3;object-fit:contain;background:#fff;margin:0}
.container-showcase figcaption{padding:16px 22px;border-top:3px solid var(--gold);color:var(--n);font-weight:600;font-size:.95rem;line-height:1.5;text-align:center}
@media(max-width:620px){.container-showcase{margin-top:24px}.container-showcase figcaption{padding:14px 16px;font-size:.88rem}}
