/* Shared layout: headers grow with wrapped navigation and language controls. */
@media screen {
  .topbar{height:auto;min-height:78px;padding-top:16px;padding-bottom:16px;gap:16px 20px;flex-wrap:wrap;align-content:start}
  .topbar>.brand{flex:0 0 auto;max-width:100%;min-width:0}
  .topbar .seal{flex-shrink:0}
  .topbar>.top-actions,.topbar>.nav{min-width:0;max-width:100%;flex-wrap:wrap;gap:8px;align-items:center}
  .topbar>.top-actions{flex:1 1 760px}
  .topbar>.nav{flex:1 1 640px}
  .topbar>.nav a,.topbar .news-nav{white-space:normal;overflow-wrap:anywhere;line-height:1.4;min-height:44px}
  .topbar .status{max-width:100%;white-space:normal;line-height:1.5}
  .shell :is(.grid,.people-grid,.stories,.guide-layout,.layout)>*{min-width:0}
  .shell :is(.card,.story,.guide-plan,.guide-sources,.preflight-notice){overflow-wrap:anywhere}
  .shell :is(input,select,textarea,iframe){max-width:100%}
  .filters{min-width:0}
  @media(min-width:761px) and (max-width:1400px){
    .topbar>.brand{flex-basis:100%}
    .topbar>.top-actions,.topbar>.nav{flex-basis:100%;justify-content:flex-start}
  }
  @media(max-width:760px){
    .topbar>.brand{flex-basis:auto}
    .shell :is(.map-head,.section-head,.results-head,.filter-head){flex-wrap:wrap}
    .filters select{min-width:0;width:100%}
    .filters label{max-width:100%}
  }
}

/* Consistent identity block; initials reserve space for approved portraits. */
.person-identity{display:flex;align-items:center;gap:12px;margin:10px 0}
.person-avatar{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border:1px solid #61746a;border-radius:50%;background:#20352f;color:#f4d49c;font:20px/1 Georgia,serif}
.person-identity h3{min-width:0;margin:0;overflow-wrap:anywhere}
