.office-page .office-hero-photo > div { aspect-ratio:16/9; }
.office-page .office-hero-photo img { object-position:center 34%; }
.office-page .restaurant-prose blockquote { margin:24px 0; padding:18px 22px; border-left:3px solid #86a99a; background:#f3f6f4; color:#254236; }
.office-page .office-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:24px 0; }
.office-page .office-grid > div { padding:20px; border:1px solid #dce3df; border-radius:6px; }
.office-page .office-grid h3 { margin:0 0 10px; font-size:19px; }
.office-page .office-grid p,.office-page .office-grid ul { margin:0; }
.office-page .office-cta { margin:28px 0 40px; padding:26px 28px; border:1px solid #cad9d1; border-radius:6px; background:#f3f7f5; }
.office-page .office-cta h2,.office-page .office-cta h3 { margin:6px 0 12px; padding:0; border:0; }
.office-page .office-cta h3 { font-size:26px; }
.office-page .office-cta p:not(.detail-kicker) { margin:0; color:#405149; font-size:17px; line-height:1.65; }
.office-page .office-cta .restaurant-actions { margin-bottom:0; }
.office-page .office-case-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:0 0 30px; }
.office-page .office-case-card { padding:24px; border:1px solid #dce3df; border-radius:6px; }
.office-page .office-case-card h3 { margin:8px 0 14px; }
.office-page .office-case-card p,.office-page .office-case-card li { color:#405149; line-height:1.65; }
.office-page .office-case-card ul { padding-left:20px; }
.office-page .office-case-card > a { font-weight:700; }
.office-page .office-columns { columns:2; column-gap:36px; }
.office-page .office-columns li { break-inside:avoid; }
.office-page .office-errors { counter-reset:item; }
.office-page .office-sources { margin:12px 0 40px; padding:24px 26px; border-top:1px solid #dce3df; border-bottom:1px solid #dce3df; color:#46564e; font-size:15px; line-height:1.7; }
.office-page .office-sources h3 { margin-top:0; }
.office-page .office-sources p { margin-bottom:0; }
.office-page .office-final-cta { margin-top:42px; }
.office-page .office-final-cta h2 { font-size:30px; }
@media(max-width:760px) {
  .office-page .office-grid,.office-page .office-case-grid { grid-template-columns:1fr; }
  .office-page .office-columns { columns:1; }
  .office-page .office-cta { padding:22px; }
  .office-page .office-cta h3 { font-size:23px; }
  .office-page .office-hero-photo > div { aspect-ratio:4/3; }
}
