/* FM.COM collaboration logos v4 — 2026-10-20.
   Muted/grayscale at rest, authentic source colours on hover or keyboard focus.
   Ayuntamiento de Aviles is the one exception: solid white when active. */
.fmcollabs,.fmcollabs *{box-sizing:border-box}
.fmcollabs{
  padding:clamp(20px,3vw,38px) 0 clamp(52px,6vw,82px);
  font-family:'Poppins',sans-serif;color:#fff
}
.fmcollabs__heading{
  border-top:1px solid rgba(255,255,255,.18);
  padding:38px 0 26px
}
.fmcollabs__heading h2{
  font:700 clamp(30px,4.3vw,48px)/1.16 'Poppins',sans-serif!important;
  color:#fff!important;letter-spacing:-.043em;
  margin:0 0 12px!important;padding:0!important
}
.fmcollabs__intro{
  font:400 13px/1.75 'Poppins',sans-serif!important;
  color:#dce5ff!important;max-width:680px;margin:0!important
}
.fmcollabs__grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:16px 22px;
  align-items:center;
  max-width:1100px;
  margin:0 auto;
  padding:8px 0
}
.fmcollabs__item{
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:center;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  isolation:isolate
}
.fmcollabs__logo-link{
  display:flex!important;
  align-items:center;
  justify-content:center;
  min-width:0;
  width:100%;
  height:121px;
  padding:5px;
  background:transparent!important;
  border:0!important;
  text-decoration:none!important;
  cursor:default;
  position:relative;
  z-index:1
}
a.fmcollabs__logo-link{cursor:pointer}
.fmcollabs__logo{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:107px!important;
  object-fit:contain!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:grayscale(1) brightness(1.12) contrast(1.07)!important;
  opacity:1;
  transform:scale(1);
  transform-origin:center;
  transition:transform .23s ease,opacity .23s ease,filter .23s ease!important;
  position:relative
}
.fmcollabs__logo-link:hover,
.fmcollabs__logo-link:focus-visible{z-index:2}
.fmcollabs__item .fmcollabs__logo-link:hover .fmcollabs__logo,
.fmcollabs__item .fmcollabs__logo-link:focus-visible .fmcollabs__logo{
  opacity:1;
  transform:scale(1.12);
  filter:none!important
}
.fmcollabs__logo-link:focus-visible{
  outline:2px solid #fff57c!important;
  outline-offset:-2px!important;
  border-radius:8px
}
/* Preserve distinctive gray values and contrast of detailed marks.
   Faint, dark-source logos are inverted but NOT flattened to white.
   Square icons keep their midtones to show the symbol inside. */
.fmcollabs__item:nth-child(3) .fmcollabs__logo,
.fmcollabs__item:nth-child(5) .fmcollabs__logo,
.fmcollabs__item:nth-child(9) .fmcollabs__logo{
  opacity:1;
  filter:grayscale(1) invert(1) contrast(1.12)!important
}
.fmcollabs__item:nth-child(7) .fmcollabs__logo{
  filter:grayscale(1) brightness(.76) contrast(1.55)!important
}
.fmcollabs__item:nth-child(11) .fmcollabs__logo{
  filter:grayscale(1) brightness(.85) contrast(1.40)!important
}
/* Stable organisation ID, independent of the order in organisations.json. */
.fmcollabs__item[data-fm-org="ayuntamiento-aviles"] .fmcollabs__logo-link:hover .fmcollabs__logo,
.fmcollabs__item[data-fm-org="ayuntamiento-aviles"] .fmcollabs__logo-link:focus-visible .fmcollabs__logo{
  filter:brightness(0) invert(1)!important;
}
@media(max-width:1020px){
  .fmcollabs__grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px 19px
  }
}
@media(max-width:650px){
  .fmcollabs{padding-top:12px;padding-bottom:59px}
  .fmcollabs__heading{padding:27px 0 21px}
  .fmcollabs__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 15px}
  .fmcollabs__logo-link{height:102px;padding:5px}
  .fmcollabs__logo{max-height:90px!important}
}
@media(max-width:420px){
  .fmcollabs__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px}
  .fmcollabs__logo-link{height:101px}
  .fmcollabs__logo{max-height:89px!important}
}
@media(prefers-reduced-motion:reduce){
  .fmcollabs__logo{transition:none!important}
  .fmcollabs__logo-link:hover .fmcollabs__logo,
  .fmcollabs__logo-link:focus-visible .fmcollabs__logo{transform:none}
}
