
.residential-gallery-page{padding:32px 18px 60px}
.res-gallery-hero{text-align:center;max-width:900px;margin:0 auto 34px}
.res-gallery-hero h1{font-size:clamp(38px,6vw,68px);color:#063b68;margin-bottom:12px}
.res-gallery-hero p{font-size:18px;line-height:1.6;color:#455565}
.res-gallery-group{margin:38px 0}
.res-gallery-group h2{text-align:center;color:#078eab;font-size:clamp(28px,4vw,42px)}
.res-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.res-gallery-card{display:block;background:#fff;border:1px solid #d8e2ea;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(2,31,56,.1);text-decoration:none;color:#102b3f}
.res-gallery-card img{display:block;width:100%;height:280px;object-fit:cover}
.res-gallery-copy{padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.res-gallery-copy strong{font-size:16px;line-height:1.35}
.res-gallery-copy span{font-size:13px;color:#667684}
.res-gallery-cta{text-align:center;background:#063b68;color:#fff;padding:28px;border-radius:18px;margin-top:40px}
.res-gallery-cta h2{margin-top:0}
.res-gallery-cta .btn{display:inline-block;margin:6px;padding:12px 18px;border-radius:8px;background:#fff;color:#063b68;text-decoration:none;font-weight:800}
.res-gallery-cta .phone{background:#078eab;color:#fff}
@media(max-width:950px){.res-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.res-gallery-grid{grid-template-columns:1fr}.res-gallery-card img{height:240px}}
