.infrastructure-intro { max-width: 1000px; }
.infrastructure-intro > p + p { margin-top: 18px; }
.infrastructure-jump-links { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.infrastructure-jump-links a { padding:10px 16px; border:1px solid #d4dfe7; border-radius:6px; color:var(--blue); font-weight:600; font-size:14px; }
.infrastructure-jump-links a:hover { background:#f3f6f8; border-color:var(--gold); }
.infrastructure-tinted { background:#f3f6f8; }
.infrastructure-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.infrastructure-photo { margin:0; overflow:hidden; border:1px solid #dce4ea; border-radius:10px; background:#fff; box-shadow:0 4px 16px rgba(23,61,97,.05); }
.infrastructure-photo a { display:block; background:#e9eef2; }
.infrastructure-photo img { display:block; width:100%; height:auto; }
.infrastructure-photo figcaption { padding:16px 20px; color:var(--blue); font-size:15px; line-height:1.5; }
.infrastructure-photo a:focus-visible,.infrastructure-jump-links a:focus-visible { outline:3px solid var(--gold); outline-offset:-3px; }
.infrastructure-gallery-feature { grid-template-columns:1fr; max-width:1000px; margin:auto; }
@media(max-width:680px) { .infrastructure-gallery { grid-template-columns:1fr; gap:20px; } }