.photo-section{padding-top:88px}
.photo-intro{max-width:760px}
.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:42px}
.photo-card{position:relative;min-height:228px;margin:0;border-radius:18px;overflow:hidden;background:#dbe7ef;box-shadow:0 14px 32px rgba(12,43,70,.12)}
.photo-card img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.photo-card:hover img{transform:scale(1.035)}
.photo-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,26,47,0) 42%,rgba(5,26,47,.8) 100%);pointer-events:none}
.photo-card-featured{grid-column:span 2;grid-row:span 2;min-height:472px}
.photo-card figcaption{position:absolute;z-index:1;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:3px;padding:44px 20px 18px;color:#fff}
.photo-card figcaption strong{font-size:16px;line-height:1.25}
.photo-card figcaption span{font-size:13px;line-height:1.35;color:#deedf7}
.service-photo-strip{margin-top:35px}
.service-photo-strip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:19px}
.service-photo-strip figure,.regional-photo-grid figure{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--soft)}
.service-photo-strip img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover}
.service-photo-strip figcaption,.regional-photo-grid figcaption{padding:12px 14px 14px;color:var(--muted);font-size:13px;line-height:1.4}
.regional-photo-panel{margin-top:0}
.regional-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:30px}
.regional-photo-grid img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover}
@media(max-width:850px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-card-featured{min-height:390px}.regional-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.photo-grid{grid-template-columns:1fr;gap:13px}.photo-card,.photo-card-featured{grid-column:auto;grid-row:auto;min-height:260px}.photo-card-featured{min-height:355px}.service-photo-strip-grid,.regional-photo-grid{grid-template-columns:1fr}.service-photo-strip img,.regional-photo-grid img{aspect-ratio:16 / 11}}
