/* SYNTHEX V143 R1 — responsive marquee hotfix
   Keeps V143 visual base intact. Fixes duplicated/overlapping profession labels
   by sizing each repeated marquee group from its real content, not viewport width. */

.marquee{
  display:flex!important;
  width:max-content!important;
  min-width:0!important;
  animation:synthex-marquee-v143-r1 36s linear infinite!important;
  will-change:transform;
}
.marquee-group{
  display:flex!important;
  flex:0 0 auto!important;
  width:max-content!important;
  min-width:max-content!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:44px!important;
  padding:0 22px!important;
}
.marquee-group span{
  display:inline-flex!important;
  flex:0 0 auto!important;
  margin:0!important;
  white-space:nowrap!important;
  line-height:1.2!important;
}
@keyframes synthex-marquee-v143-r1{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@media(max-width:900px){
  .marquee{animation-duration:32s!important}
  .marquee-group{gap:34px!important;padding:0 17px!important}
}
@media(max-width:780px){
  .marquee{min-width:0!important;animation-duration:30s!important}
  .marquee-group{
    flex-basis:auto!important;
    min-width:max-content!important;
    gap:28px!important;
    padding:0 14px!important;
  }
  .marquee span{font-size:12px!important;letter-spacing:.15em!important}
}
@media(max-width:390px){
  .marquee-group{gap:24px!important;padding:0 12px!important}
  .marquee span{font-size:11px!important;letter-spacing:.13em!important}
}
@media(prefers-reduced-motion:reduce){
  .marquee{animation:none!important;transform:none!important}
  .marquee-wrap{overflow-x:auto!important}
}
