/* ENVIA LMS V10.0.7 | Device-safe reference carousel fix */
.reference-premium{
  overflow:hidden!important;
}
.reference-shell{
  overflow:hidden!important;
  width:100%!important;
}
.reference-carousel{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  position:relative!important;
  z-index:2!important;
  padding:8px 0 14px!important;
}
.reference-logo-row-v930,
.logo-row.reference-logo-row-v930,
.reference-logo-row.reference-logo-row-v930{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  grid-template-columns:none!important;
  width:max-content!important;
  min-width:max-content!important;
  max-width:none!important;
  gap:22px!important;
  padding:0 10px!important;
  margin:0!important;
  filter:none!important;
  opacity:1!important;
  overflow:visible!important;
  animation:enviaRefMarqueeV1007 36s linear infinite!important;
  will-change:transform!important;
}
.reference-logo-row-v930.reference-row-empty{
  width:100%!important;
  min-width:0!important;
  justify-content:center!important;
  animation:none!important;
}
.reference-logo-row-v930 article{
  flex:0 0 clamp(220px,18vw,300px)!important;
  width:clamp(220px,18vw,300px)!important;
  min-width:clamp(220px,18vw,300px)!important;
  max-width:clamp(220px,18vw,300px)!important;
  min-height:clamp(136px,10vw,188px)!important;
  display:grid!important;
  place-items:center!important;
  text-align:center!important;
  padding:clamp(20px,2vw,30px)!important;
  border-radius:clamp(18px,1.8vw,24px)!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid #dfe8f8!important;
  box-shadow:0 18px 48px rgba(7,20,71,.065)!important;
  overflow:hidden!important;
}
.reference-logo-row-v930 article a{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
}
.reference-logo-row-v930 img{
  width:auto!important;
  height:auto!important;
  max-width:min(86%,230px)!important;
  max-height:clamp(78px,7.5vw,116px)!important;
  object-fit:contain!important;
}
.reference-logo-row-v930 b{
  width:72px!important;
  height:72px!important;
  border-radius:22px!important;
  display:grid!important;
  place-items:center!important;
  margin:0 0 10px!important;
}
.reference-logo-row-v930 span{
  font-size:clamp(14px,1.05vw,18px)!important;
  line-height:1.25!important;
}
.reference-carousel:hover .reference-logo-row-v930{
  animation-play-state:paused!important;
}
@keyframes enviaRefMarqueeV1007{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(calc(-50% - 11px),0,0)}
}

@media (max-width:1280px){
  .reference-logo-row-v930,
  .logo-row.reference-logo-row-v930,
  .reference-logo-row.reference-logo-row-v930{gap:18px!important;}
  .reference-logo-row-v930 article{
    flex-basis:240px!important;
    width:240px!important;
    min-width:240px!important;
    max-width:240px!important;
    min-height:154px!important;
  }
  .reference-logo-row-v930 img{max-width:190px!important;max-height:92px!important;}
}

@media (max-width:900px){
  .reference-shell{padding:34px 18px 38px!important;border-radius:28px!important;}
  .reference-carousel{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    -webkit-overflow-scrolling:touch!important;
    mask-image:none!important;
    -webkit-mask-image:none!important;
    padding:4px 0 14px!important;
  }
  .reference-carousel::-webkit-scrollbar{display:none!important;}
  .reference-logo-row-v930,
  .logo-row.reference-logo-row-v930,
  .reference-logo-row.reference-logo-row-v930{
    animation:none!important;
    transform:none!important;
    gap:14px!important;
    padding:0 4px!important;
    width:max-content!important;
    min-width:max-content!important;
  }
  .reference-logo-row-v930 article{
    scroll-snap-align:center!important;
    flex:0 0 min(62vw,260px)!important;
    width:min(62vw,260px)!important;
    min-width:min(62vw,260px)!important;
    max-width:min(62vw,260px)!important;
    min-height:136px!important;
    padding:20px!important;
  }
  .reference-logo-row-v930 img{max-width:88%!important;max-height:82px!important;}
}

@media (max-width:560px){
  .reference-premium{padding:20px 0 28px!important;}
  .reference-shell{padding:28px 14px 34px!important;border-radius:24px!important;}
  .reference-head{margin-bottom:20px!important;}
  .reference-head h2{font-size:clamp(26px,8vw,34px)!important;line-height:1.13!important;}
  .reference-head p{font-size:14px!important;line-height:1.6!important;}
  .reference-logo-row-v930 article{
    flex-basis:min(78vw,300px)!important;
    width:min(78vw,300px)!important;
    min-width:min(78vw,300px)!important;
    max-width:min(78vw,300px)!important;
    min-height:128px!important;
    border-radius:20px!important;
  }
  .reference-logo-row-v930 img{max-width:90%!important;max-height:76px!important;}
}

@media (pointer:coarse){
  .reference-carousel{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    -webkit-overflow-scrolling:touch!important;
    mask-image:none!important;
    -webkit-mask-image:none!important;
  }
  .reference-logo-row-v930,
  .logo-row.reference-logo-row-v930,
  .reference-logo-row.reference-logo-row-v930{
    animation:none!important;
    transform:none!important;
  }
  .reference-logo-row-v930 article{scroll-snap-align:center!important;}
}

@media (prefers-reduced-motion:reduce){
  .reference-logo-row-v930,
  .logo-row.reference-logo-row-v930,
  .reference-logo-row.reference-logo-row-v930{animation:none!important;transform:none!important;}
}
