/* Real room photographs; keep the complete original frame at every width. */
.office-gallery{padding-block:72px;border-top:1px solid var(--line,#cbd1c5);scroll-margin-top:32px}
.office-gallery-home{padding-block:88px}
.office-intro{max-width:790px;margin-bottom:34px}
.office-eyebrow{font-size:12px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;line-height:1.6;margin:0 0 20px}
.office-intro h2{font-size:clamp(34px,4vw,54px);line-height:1.14;letter-spacing:-.045em;margin:0}
.office-description{max-width:655px;font-size:17px;line-height:1.8;margin:22px 0 0}
.office-photos{display:grid;grid-template-columns:minmax(0,16fr) repeat(2,minmax(0,9fr));gap:22px;align-items:start}
.office-photo{min-width:0;margin:0}
.office-photo-link{display:block;border-radius:10px;background:var(--sage,#e3e9df)}
.office-photo-link img{display:block;width:100%;height:auto;border-radius:10px}
.office-photo-link:hover{outline:2px solid var(--orange,#ef7b42);outline-offset:4px}
.office-photo-link:focus-visible{outline:3px solid #b85425;outline-offset:5px}
.office-photo figcaption{display:flex;justify-content:space-between;gap:10px;font-size:12px;line-height:1.65;color:#526b60;margin:11px 0 0}
.office-photo figcaption span{flex-shrink:0;font-size:16px;line-height:1.25}
.office-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px;padding-top:23px;border-top:1px solid var(--line,#cbd1c5)}
.office-bottom p{font-size:12px;line-height:1.8;color:#526b60;margin:0}
.office-contact{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:44px;max-width:100%;padding-block:8px;border-bottom:1px solid currentColor;font-size:14px;font-weight:650;line-height:1.7}
.office-contact span{flex-shrink:0;font-size:21px;line-height:1}
@media(max-width:760px){
  .office-gallery,.office-gallery-home{padding-block:50px}
  .office-intro{margin-bottom:27px}
  .office-eyebrow{font-size:11px;margin-bottom:17px}
  .office-intro h2{font-size:clamp(32px,6.5vw,43px);line-height:1.16}
  .office-description{font-size:15px;line-height:1.8;margin-top:19px}
  .office-photos{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 15px}
  .office-photo-room{grid-column:1/-1}
  .office-photo figcaption{font-size:11px;gap:6px;margin-top:9px}
  .office-photo figcaption span{font-size:15px}
  .office-bottom{display:block;margin-top:25px;padding-top:18px}
  .office-bottom p{font-size:11px}
  .office-contact{font-size:13px;margin-top:13px;gap:18px}
}
