/* Client project albums. Keep every label and control comfortably readable. */
.album-cover{position:relative;display:block;overflow:hidden;background:#101d28}
.album-cover img{width:100%;height:310px;object-fit:contain;transition:transform .45s ease}
.album-cover:is(:hover,:focus-visible) img{transform:scale(1.025)}
.album-count{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-top:1px solid var(--line);font-size:16px;background:var(--navy);color:var(--gold)}
.album-count .arrow{width:26px;height:26px}
.album-card{transition:translate .25s ease,border-color .25s ease;border:1px solid var(--line)}
.album-card:hover{translate:0 -4px;border-color:var(--gold)}
.album-card .gallery-copy h2{font-size:26px;line-height:1.35}
.album-card .gallery-copy p{font-size:16px}
.album-card .text-link{margin-top:20px}
.comparison-grid{display:grid;gap:42px}
.comparison-block h3{font-size:24px;margin-bottom:20px;line-height:1.35}
.comparison-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.comparison-pair figure{margin:0;min-width:0;position:relative;border:1px solid var(--line);background:#101d28}
.project-photo{display:block;position:relative;width:100%;padding:0;border:0;cursor:zoom-in;background:#101d28;color:var(--white);overflow:hidden}
.project-photo img{width:100%;height:100%;object-fit:contain;transition:transform .4s ease,filter .4s ease}
.comparison-pair .project-photo{aspect-ratio:4/3}
.project-photo:is(:hover,:focus-visible) img{transform:scale(1.018);filter:brightness(1.08)}
.photo-expand{position:absolute;right:12px;bottom:12px;width:44px;height:44px;display:grid;place-items:center;background:#15232fe6;border:1px solid #c7a56b88;color:var(--gold);transition:background .2s ease}
.project-photo:hover .photo-expand{background:#263746}
.comparison-pair figcaption{padding:12px 16px;font-size:16px}
.stage-label{font-size:16px;font-weight:600;color:var(--muted)}
.stage-after{color:var(--gold)}
.home-comparisons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
.home-comparison>.text-link{margin-top:22px;font-size:18px;line-height:1.6;display:flex;justify-content:space-between}
.home-comparison .comparison-pair{gap:10px}
.home-comparison .comparison-pair .project-photo{aspect-ratio:1/1}
.home-comparison h3{font-size:22px}
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.project-photo-card{min-width:0;margin:0;border:1px solid var(--line);background:var(--navy);transition:border-color .2s ease}
.project-photo-card:hover{border-color:var(--gold)}
.project-photo-card[hidden],.album-card[hidden]{display:none}
.project-photo-card .project-photo{aspect-ratio:4/3}
.project-photo-card figcaption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:14px 16px;color:var(--gold);font-size:16px}
.project-photo-card figcaption span{color:var(--muted);font-size:16px}
.project-lightbox{max-width:1100px;max-height:94dvh;overflow:auto}
.project-lightbox>img{width:100%;height:65dvh;object-fit:contain;background:#0e1922;max-height:65dvh}
.lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px}
.lightbox-controls button{flex-shrink:0;display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--gold);background:transparent;color:var(--gold);cursor:pointer}
.lightbox-controls button:is(:hover,:focus-visible){background:var(--gold);color:var(--ink)}
.lightbox-controls .photo-caption{margin:0;text-align:center;font-size:16px;color:var(--muted)}
.project-lightbox .lightbox-head h2{font-size:22px;line-height:1.4}
body:has(.project-lightbox[open]){overflow:hidden}
.project-photo:focus-visible,.album-cover:focus-visible{outline:3px solid var(--gold);outline-offset:-4px}
@media(max-width:1000px){.home-comparisons{grid-template-columns:1fr;gap:36px}.home-comparison .comparison-pair .project-photo{aspect-ratio:4/3}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.comparison-pair{gap:10px}.comparison-pair .project-photo{aspect-ratio:3/4}.home-comparison .comparison-pair .project-photo{aspect-ratio:3/4}.comparison-pair figcaption{padding:10px 12px}.comparison-block h3{font-size:22px}.photo-expand{width:36px;height:36px;right:6px;bottom:6px}.photo-grid{grid-template-columns:1fr;gap:22px}.project-photo-card .project-photo{aspect-ratio:4/3}.album-cover img{height:270px}.project-lightbox>img{height:57dvh;max-height:57dvh}.project-lightbox .lightbox-head h2{font-size:18px}.lightbox-controls{gap:10px}.project-lightbox{padding:16px}.lightbox-controls button{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.album-card,.album-cover img,.project-photo img,.photo-expand{transition:none}.album-card:hover{translate:none}.album-cover:is(:hover,:focus-visible) img,.project-photo:is(:hover,:focus-visible) img{transform:none}}
