/* Desktop footer: three compact rows; mobile and the cake editor keep their layout. */
@media(min-width:960px){
 body>footer:not(.page-footer){
  display:grid;grid-template-columns:130px minmax(250px,1fr) auto auto;
  align-items:center;justify-content:normal;gap:4px 24px;
  padding:20px 4%;font-size:.8125rem;line-height:1.6;
 }
 body>footer:not(.page-footer)>:is(p,span,nav,a,button){min-width:0;grid-column:auto;grid-row:auto}
 body>footer:not(.page-footer)>p{margin:0!important}
 body>footer:not(.page-footer) .footer-brand{grid-column:1;grid-row:1/3;justify-self:start}
 body>footer:not(.page-footer) .account-footer{grid-column:2;grid-row:1}
 body>footer:not(.page-footer)>p:not([class]){grid-column:2;grid-row:2}
 body>footer:not(.page-footer)>span{grid-column:3/-1;grid-row:2;justify-self:end;font-size:inherit}
 body>footer:not(.page-footer) .official-channel-footer{
  grid-column:3/-1;grid-row:1;justify-content:flex-end;gap:4px;
  border:0;padding:0;flex-basis:auto;
 }
 body>footer:not(.page-footer) .official-channel-footer a{padding:4px 6px;gap:6px}
 body>footer:not(.page-footer) :is(.work-footer,.journal-footer,.aff-footer){
  grid-row:3;grid-column:auto!important;order:0;width:auto!important;
  flex-basis:auto!important;padding:0!important;border:0!important;
 }
 body>footer:not(.page-footer) .work-footer{grid-column:1!important}
 body>footer:not(.page-footer) .journal-footer{grid-column:2!important}
 body>footer:not(.page-footer) .aff-footer{grid-column:3!important;justify-self:end}
 body>footer:not(.page-footer) .measure-preferences{grid-column:4;grid-row:3;justify-self:end;width:auto}
 body>footer:not(.page-footer) .profile-link{grid-column:1/-1;grid-row:4}
 body>footer:not(.page-footer) a{display:inline-flex;align-items:center;min-height:44px}
 /* Menu pages use contact details in place of the brand block. */
 body>footer:not(.page-footer):not(:has(.footer-brand))>a:first-child{grid-column:1/3;grid-row:1}
 body>footer:not(.page-footer):not(:has(.footer-brand))>p:not([class]){grid-column:1/3;grid-row:2}
 body>footer:not(.page-footer):not(:has(.footer-brand)) .official-channel-footer{grid-row:1/3}
 /* Standalone welcome/affiliation footers have a smaller, different link set. */
 body>footer.page-footer{align-items:center;gap:16px;padding-top:20px;padding-bottom:20px}
 body>footer.page-footer .aff-footer{width:auto!important;flex:0 1 auto!important;border:0!important;padding:0!important;margin:0}
 body>footer.page-footer .aff-footer a{display:inline-flex;align-items:center;min-height:44px}
 body>footer:not(.page-footer):has(.brand-logo){display:flex;flex-wrap:wrap;gap:8px 28px}
 body>footer:not(.page-footer):has(.brand-logo)>p:first-of-type{flex:1}
 body>footer:not(.page-footer):has(.brand-logo)>p{font-size:inherit}
}
