/* QVFilm Footer Partner Manager v1.1 · v0.27.6.22
 * Dynamic partner/sponsor logos with normalized square logo wells and an
 * accessible horizontal carousel when the managed list exceeds four items. */
.qvf-footer-partners.qvf-global-footer__partners{
  display:block!important;
  padding:22px 0!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}
.qvf-footer-partners__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin:0 0 14px;
}
.qvf-footer-partners .qvf-global-footer__partners-label{
  display:block;
  color:rgba(255,255,255,.38)!important;
  font-size:.58rem!important;
  font-weight:700!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
.qvf-footer-partners__controls{display:flex;align-items:center;gap:7px}
.qvf-footer-partners__controls button{
  width:34px;height:30px;padding:0;border:1px solid rgba(255,255,255,.13);
  background:transparent;color:rgba(255,255,255,.72);font:600 .82rem/1 Montserrat,Arial,sans-serif;
  cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease;
}
.qvf-footer-partners__controls button:hover,.qvf-footer-partners__controls button:focus-visible{
  border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.035);color:#fff;outline:none;
}
.qvf-footer-partners__viewport{min-width:0;position:relative}
.qvf-footer-partners--carousel .qvf-footer-partners__viewport{
  overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;
}
.qvf-footer-partners--carousel .qvf-footer-partners__viewport::-webkit-scrollbar{display:none}
.qvf-footer-partners--static .qvf-footer-partners__track{
  display:grid!important;
  grid-template-columns:repeat(var(--qvf-partner-columns,4),minmax(0,1fr))!important;
  gap:12px!important;
}
.qvf-footer-partners--carousel .qvf-footer-partners__track{
  display:flex!important;gap:12px!important;width:max-content;min-width:100%;
}
.qvf-footer-partner{
  position:relative;box-sizing:border-box;min-width:0;min-height:92px;
  display:flex;align-items:center;gap:13px;padding:12px 13px;
  border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.008);
  color:rgba(255,255,255,.62)!important;text-decoration:none!important;
  transition:border-color .2s ease,background .2s ease,color .2s ease;
}
.qvf-footer-partners--carousel .qvf-footer-partner{
  flex:0 0 calc((min(1460px,calc(100vw - 80px)) - 36px)/4);
  scroll-snap-align:start;
}
.qvf-footer-partner:hover,.qvf-footer-partner:focus-visible{
  border-color:rgba(255,255,255,.30);background:rgba(255,255,255,.025);color:#fff!important;outline:none;
}
.qvf-footer-partner__logo-well{
  width:62px;height:62px;flex:0 0 62px;box-sizing:border-box;
  display:grid;place-items:center;padding:7px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.015);
}
.qvf-footer-partner__image{
  display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
  object-fit:contain!important;object-position:center!important;margin:0!important;padding:0!important;border:0!important;
}
.qvf-footer-partner__monogram{
  display:grid;place-items:center;width:100%;height:100%;color:rgba(255,255,255,.72);
  font-size:.63rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;
}
.qvf-footer-partner__name{
  min-width:0;color:inherit;font-size:.61rem;font-weight:700;line-height:1.35;letter-spacing:.09em;text-transform:uppercase;
  overflow-wrap:anywhere;
}
.qvf-footer-partner__number{
  position:absolute;right:8px;top:6px;color:rgba(255,255,255,.20);font-size:.48rem;font-weight:700;letter-spacing:.05em;
}
@media(max-width:1100px){
  .qvf-footer-partners--carousel .qvf-footer-partner{flex-basis:calc((100vw - 68px - 24px)/3)}
}
@media(max-width:900px){
  .qvf-footer-partners.qvf-global-footer__partners{padding:19px 0!important}
  .qvf-footer-partners--static .qvf-footer-partners__track{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .qvf-footer-partners--carousel .qvf-footer-partner{flex-basis:calc((100vw - 44px - 12px)/2)}
}
@media(max-width:640px){
  .qvf-footer-partners__head{margin-bottom:12px}
  .qvf-footer-partner{min-height:80px;padding:10px;gap:10px}
  .qvf-footer-partner__logo-well{width:54px;height:54px;flex-basis:54px;padding:6px}
  .qvf-footer-partner__name{font-size:.56rem}
}
@media(max-width:420px){
  .qvf-footer-partners--static .qvf-footer-partners__track{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .qvf-footer-partners--carousel .qvf-footer-partners__track{gap:9px!important}
  .qvf-footer-partners--carousel .qvf-footer-partner{flex-basis:calc((100vw - 32px - 9px)/2)}
  .qvf-footer-partner{min-height:74px;padding:8px;gap:8px}
  .qvf-footer-partner__logo-well{width:48px;height:48px;flex-basis:48px;padding:5px}
  .qvf-footer-partner__name{font-size:.51rem;letter-spacing:.06em}
}
@media(max-width:350px){
  .qvf-footer-partners--static .qvf-footer-partners__track{grid-template-columns:1fr!important}
  .qvf-footer-partners--carousel .qvf-footer-partner{flex-basis:calc(100vw - 32px)}
}
@media(prefers-reduced-motion:reduce){
  .qvf-footer-partner,.qvf-footer-partners__controls button{transition:none!important}
  .qvf-footer-partners--carousel .qvf-footer-partners__viewport{scroll-behavior:auto!important}
}

/* v0.27.6.22 · SVG/dark-artwork contrast normalization.
 * Default managed logos are rendered as restrained light monochrome marks on
 * the black footer. This affects raster/SVG <img> uniformly without touching
 * the source asset in Media Library. Editors can opt a partner back to its
 * original brand colors per row. */
.qvf-footer-partner__logo-well--auto_light .qvf-footer-partner__image{
  filter:grayscale(1) brightness(0) invert(1)!important;
  opacity:.76!important;
}
.qvf-footer-partner:hover .qvf-footer-partner__logo-well--auto_light .qvf-footer-partner__image,
.qvf-footer-partner:focus-visible .qvf-footer-partner__logo-well--auto_light .qvf-footer-partner__image{
  opacity:.96!important;
}
.qvf-footer-partner__logo-well--original .qvf-footer-partner__image{
  filter:none!important;
  opacity:1!important;
}
