.tmav-material {
  box-sizing: border-box;
  width: 100%;
  padding: 32px;
  margin: 24px 0;
  border-left: 4px solid #c51d32;
  background: #f5f5f5;
  color: #242936;
  text-align: left;
  font: 400 16px/1.7 Montserrat, sans-serif;
  overflow-wrap: anywhere;
}
.tmav-material h3 { font: 700 24px/1.3 Montserrat, sans-serif; margin: 0 0 20px; }
.tmav-material h4 { font: 700 18px/1.3 Montserrat, sans-serif; margin: 0 0 12px; }
.tmav-material p { margin: 0 0 20px; }
.tmav-material a { color: #c51d32; }
.tmav-material .button { display: inline-block; box-sizing: border-box; max-width: 100%; white-space: normal; padding: 12px 20px; color: #fff; font-size: 14px; line-height: 1.5; }
.tmav-material-locations { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); gap: 28px; }
@media (max-width: 767px) { .tmav-material { padding: 24px 20px; } }
@media (max-width: 757px) {
  /* The source header is fixed; recovered article covers need space below it. */
  body:has(img[src$="/preview-unavailable.svg"]) .header + .one_post,
  body:has(img[src*="/media/recovered/"]) .header + .one_post,
  .header + .block:has(.podcast__share) { margin-top: 60px; }
}
/* Original office maps stay full width; directions remain available outside the embed. */
.tmav-refresh .tmav-material--map { padding: 0; margin: 0; border: 0; background: transparent; }
.tmav-material--map .tmav-material-locations { gap: 36px; }
.tmav-office-map { display: block; width: 100%; height: 480px; border: 0; margin: 0 0 24px; }
@media (max-width: 767px) { .tmav-office-map { height: 360px; } }
@media (max-width: 380px) { .tmav-office-map { height: 320px; } }
