.office-location { background: #f5f7fb; }
.office-location .section-title { margin-bottom: 32px; }
.office-location .section-title p { margin: 14px auto 0; max-width: 640px; color: #626979; }
.office-location-grid { display: grid; grid-template-columns: 1fr 1.8fr; gap: 24px; }
.office-location-card { min-width: 0; margin: 0; background: #fff; border: 1px solid #e3e7ee; border-radius: 12px; overflow: hidden; box-shadow: 0 8px 24px rgba(26, 40, 70, .05); }
.office-location-photo { display: flex; align-items: center; justify-content: center; height: clamp(300px, 36vw, 480px); background: #e9edf2; }
.office-location-photo img { width: 100%; height: 100%; display: block; object-fit: contain; }
.office-location-photo:hover { opacity: .92; }
.office-location-photo:focus-visible { outline: 3px solid #5e87eb !important; outline-offset: -3px; }
.office-location-card figcaption { padding: 18px 16px; font-size: 17px; font-weight: 600; color: #25324b; text-align: center; }
.office-location-hint { margin: 24px 0 0; text-align: center; font-size: 14px; color: #626979; }
@media (max-width: 767px) { .office-location { padding: 60px 0; } .office-location-grid { grid-template-columns: minmax(0, 1fr); } .office-location-photo { height: auto; } .office-location-photo img { height: auto; } }
