
/* Individually framed original portraits; a fixed ratio keeps the eye line stable at every width. */
#speakers .roster-card{height:auto;align-self:stretch}
#speakers .speaker-picture{width:100%;aspect-ratio:4/4.65;height:auto!important;flex:0 0 auto!important;position:relative;overflow:hidden}
#speakers .speaker-picture[data-portrait-layout="aligned"]{
 background-image:var(--portrait-edge);background-size:100% 100%;background-repeat:no-repeat;
}
#speakers .speaker-picture[data-portrait-layout="aligned"]>img{
 position:absolute!important;inset:auto!important;left:var(--portrait-left)!important;top:var(--portrait-top)!important;
 width:var(--portrait-width)!important;height:auto!important;max-width:none!important;max-height:none!important;
 object-fit:fill!important;object-position:initial!important;aspect-ratio:auto!important;
 transform:none!important;transition:none!important;
}
#speakers .roster-card:hover .speaker-picture>img{transform:none!important}
/* The existing external portrait retains its source. Only the viewport framing is adjusted. */
#speakers [data-profile-id="nazarenko"] .speaker-picture{background:#4c5b61}
#speakers [data-profile-id="nazarenko"] .speaker-picture>img{
 position:absolute;inset:auto;left:0;top:0;width:100%!important;height:100%!important;
 object-fit:cover;object-position:50% 24%!important;transform:none!important;
}
/* Full portraits in detailed biographies must never inherit an accidental face crop. */
#detailDialog .roster-dialog-picture{height:auto!important;aspect-ratio:auto!important;overflow:hidden;background:#f6f3f1}
#detailDialog .roster-dialog-picture>img{position:static;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:50% 0%!important;transform:none!important}
.municipal-panel .municipal-separate{margin-top:24px!important}
/* Compact mobile co-branding: national and regional marks share the first row. */
@media(max-width:680px){
 .official-logos--hero>.wrap{width:100%!important;max-width:none!important}
 .official-logos--footer>.wrap{width:100%!important;max-width:none!important}
 .official-logos .official-logos-grid{
  display:flex!important;flex-wrap:wrap!important;align-items:center;justify-content:center;
  gap:16px!important;width:100%!important;
 }
 .official-logos .official-logos-grid>.official-logo-item{
  flex:0 0 calc((100% - 16px)/2)!important;min-width:0!important;max-width:none!important;
  width:auto!important;height:76px!important;min-height:0!important;grid-column:auto!important;
  padding:4px!important;margin:0!important;border:0!important;background:none!important;
 }
 .official-logos .official-logos-grid>.official-logo-item[data-logo="national"]{
  flex:0 0 calc(100% - 216px)!important;padding:0!important;
 }
 .official-logos .official-logos-grid>.official-logo-item[data-logo="gov"]{
  flex:0 0 200px!important;width:200px!important;min-width:200px!important;padding:0!important;
 }
 .official-logos .official-logo-item[data-logo="gov"] img{
  width:200px!important;min-width:200px!important;max-width:200px!important;height:auto!important;max-height:none!important;
 }
 .official-logos .official-logo-item[data-logo="national"] img{max-width:100%!important;width:90px!important;height:auto!important;max-height:65px!important}
 .official-logos .official-logo-item[data-logo="business"] img{width:125px!important;max-width:100%!important;max-height:70px!important}
 .official-logos .official-logo-item[data-logo="sber"] img{width:165px!important;max-width:100%!important;max-height:65px!important}
 .official-logos .official-logos-grid>.official-logo-item[data-logo="women"]{
  flex:0 0 100%!important;width:100%!important;padding:6px!important;
 }
 .official-logos .official-logo-item[data-logo="women"] img{width:200px!important;max-width:200px!important;max-height:68px!important}
}
