/* Keep the office photograph at its container width at every breakpoint. */
main#main .contact-office-address .contact-office-visual{width:100%;min-width:0;margin:0}
main#main .contact-office-address .contact-office-visual img{display:block;width:100%;max-width:100%;height:auto;max-height:none;aspect-ratio:3/2;object-fit:cover}
@media(min-width:651px) and (max-width:1099px){main#main .contact-office-address{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:center}main#main .contact-office-address>address{width:auto;grid-column:1;grid-row:1;min-width:0}main#main .contact-office-address>.contact-office-visual{grid-column:2;grid-row:1}}
@media(max-width:650px){main#main .contact-office-address{display:flex;flex-direction:column;align-items:stretch}main#main .contact-office-address>.contact-office-visual{flex:none;width:100%}}


/* Keep the reception photograph modest on wider tablet layouts. */
main#main .contact-office-address .contact-office-visual{max-width:390px;justify-self:end} @media(max-width:650px){main#main .contact-office-address .contact-office-visual{align-self:flex-start;max-width:390px}}


/* Maintain breathing room beneath the office heading at every width. */
main#main .contact-office>h2{margin-bottom:32px}
main#main .contact-office-address{gap:28px;align-items:flex-start}
main#main .contact-office-address .contact-office-visual{max-width:340px}
@media(min-width:651px) and (max-width:1099px){main#main .contact-office-address{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:32px;align-items:start}}
@media(max-width:650px){main#main .contact-office>h2{margin-bottom:26px}main#main .contact-office-address .contact-office-visual{max-width:340px}}
