.legacy-logo-carousel { position:relative; width:100%; overflow:hidden; }
.legacy-logo-track { display:flex; width:max-content; animation:legacy-logo-scroll 132s linear infinite; will-change:transform; }
.legacy-logo-set { display:flex; flex:0 0 auto; align-items:center; width:max-content; list-style:none; padding:0; margin:0; }
.legacy-logo-set li { flex:0 0 auto; display:flex; align-items:center; justify-content:center; width:clamp(140px,16vw,246px); height:110px; margin-right:clamp(22px,4.6vw,70px); }
.elementor .legacy-logo-set img { display:block; width:100%; height:100%; max-width:100%; object-fit:contain; }
@keyframes legacy-logo-scroll { from { transform:translateX(0); } to { transform:translateX(-50%); } }
.legacy-logo-carousel:hover .legacy-logo-track,
.legacy-logo-carousel[data-paused="true"] .legacy-logo-track,
.legacy-logo-carousel[data-offscreen="true"] .legacy-logo-track,
.legacy-logo-carousel[data-hidden="true"] .legacy-logo-track { animation-play-state:paused; }
.legacy-logo-control { display:block; margin:0 16px 5px auto; padding:4px 8px; border:1px solid #999; border-radius:4px; background:#fff; color:#333; font:12px Arial,sans-serif; cursor:pointer; }
.legacy-logo-control:focus-visible { outline:2px solid #db005a; outline-offset:2px; }
@media(max-width:767px) {
 .legacy-logo-track { width:100%; animation:none!important; transform:none!important; will-change:auto; }
 .legacy-logo-set { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; gap:8px; }
 .legacy-logo-set li { width:100%; height:80px; margin:0; }
 .legacy-logo-clone,.legacy-logo-control { display:none; }
}
@media(prefers-reduced-motion:reduce) {
 .legacy-logo-track { width:100%; animation:none!important; transform:none!important; will-change:auto; }
 .legacy-logo-set { width:100%; flex-wrap:wrap; justify-content:center; }
 .legacy-logo-set li { width:140px; height:90px; margin:0; }
 .legacy-logo-clone,.legacy-logo-control { display:none; }
}

/* Original carousel layout on a clean white band. */
body.acm-page .acm-clients { background:#fff; color:#111; }
body.acm-page .acm-clients__title { color:#111; }
body.acm-page .acm-clients__note { color:#606060; }
body.acm-page .legacy-logo-set img { display:block; width:100%; height:100%; max-width:100%; object-fit:contain; filter:none; opacity:1; }
body.acm-page .legacy-logo-control { background:#db005a; color:#fff; border:0; padding:8px 12px; font:700 12px 'DM Sans',Arial,sans-serif; }
body.acm-page .acm-cat { width:clamp(140px,14vw,210px); aspect-ratio:1; background:transparent; border:0; border-radius:0; box-shadow:none; overflow:visible; }
body.acm-page .acm-cat__media { object-fit:contain; background:transparent; border:0; border-radius:0; box-shadow:none; }
body.acm-page .acm-cat--fallback { background:transparent; box-shadow:none; border-radius:0; overflow:visible; }
/* First render is final: no hide/reveal of the conversion panel. */
html body.acm-page .acm-hero .acm-ent,html body.acm-page .acm-hero__title .acm-line { animation:none!important; opacity:1!important; transform:none!important; clip-path:none!important; }
@media(max-width:767px){body.acm-page .acm-cat{width:130px;}.legacy-logo-set{grid-template-columns:repeat(3,minmax(0,1fr));}}

/* 31 October: black client band, white logo tiles and fully visible watermark. */
body.acm-page .acm-clients { background:#070707; color:#fff; }
body.acm-page .acm-clients__title { color:#fff; }
body.acm-page .acm-clients__note { color:#bdbdbd; }
body.acm-page .legacy-logo-set li { background:#fff; border-radius:12px; padding:12px 22px; margin-right:18px; height:120px; }
body.acm-page #esigenze { padding-top:clamp(150px,12vw,190px); }
body.acm-page #esigenze .acm-ghostword { top:24px; }
@media(max-width:767px) {
 body.acm-page #esigenze { padding-top:110px; }
 body.acm-page #esigenze .acm-ghostword { top:24px; font-size:clamp(36px,10vw,60px); }
 body.acm-page .legacy-logo-set { gap:10px; }
 body.acm-page .legacy-logo-set li { height:88px; padding:8px; margin:0; border-radius:8px; }
}

/* Full-width carousel; heading retains the page alignment. */
body.acm-page .acm-clients > .acm-wrap { max-width:none; padding-inline:0; }
body.acm-page .acm-clients__head { width:100%; max-width:var(--acm-maxw); margin-inline:auto; padding-inline:var(--acm-gutter); }
body.acm-page .legacy-logo-control { margin-top:14px; margin-right:var(--acm-gutter); }
@media(max-width:767px){ body.acm-page .legacy-logo-carousel { padding-inline:var(--acm-gutter); } }

.acm-case-logos-section{background:#fff;color:#111;padding:clamp(60px,6vw,100px) 0}.acm-case-logos-head{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:start;margin-bottom:45px}.acm-case-logos-head h2{font-family:'Special Gothic Expanded One',Arial,sans-serif;font-size:clamp(28px,3vw,46px);font-weight:400;line-height:1.1;letter-spacing:-.04em;text-transform:uppercase;margin:0;color:#111}.acm-case-logos-head h2 em{font-style:normal;color:#db005a}.acm-case-logos-head p{margin:0;color:#666;font-size:18px;line-height:1.7}.acm-case-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #ddd;border-left:1px solid #ddd}.acm-case-logos a{position:relative;display:flex;align-items:center;justify-content:center;height:180px;padding:30px;border-right:1px solid #ddd;border-bottom:1px solid #ddd;text-decoration:none;color:#777}.acm-case-logos a:hover{background:#f4f4f4}.acm-case-logos a:focus-visible{outline:3px solid #db005a;outline-offset:-3px}.acm-page .acm-case-logos img{width:220px;height:110px;max-width:90%;object-fit:contain;filter:none}.acm-case-logos a span{position:absolute;right:20px;bottom:14px;font-size:25px;font-weight:300}.acm-all-cases{display:inline-flex;gap:25px;margin-top:30px;color:#111!important;text-decoration:none;border-bottom:1px solid #777;padding-bottom:5px;font-size:15px}@media(max-width:767px){.acm-case-logos-head{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.acm-case-logos-head p{font-size:16px}.acm-case-logos{grid-template-columns:repeat(2,minmax(0,1fr))}.acm-case-logos a{height:125px;padding:20px}.acm-page .acm-case-logos img{height:75px}.acm-case-logos a span{font-size:20px;right:12px;bottom:8px}}

/* Optical normalization uses trimmed artwork on a shared canvas. */
.acm-case-logos a img{width:260px!important;height:100px!important;max-width:90%;object-fit:contain;max-height:none!important;transform:none!important}.acm-case-logos a:hover img{transform:none!important}
@media(max-width:600px){.acm-case-logos a img{width:208px!important;height:80px!important}}

.acm-case-logos a[href="/case-studies/fila.html"] img{filter:grayscale(1) brightness(0)}
