/* Shared manufacturer ribbon; retain each site's fonts and identity. */
.brand-ribbon {
  --br-ink:#173b40;--br-paper:#f7f6f2;--br-line:#e3e6e1;
  --br-small:clamp(.75rem,.72rem + .1vw,.875rem);
  --br-body:clamp(.875rem,.82rem + .2vw,1rem);
  --br-title:clamp(1.5rem,1.25rem + 1vw,2.25rem);--br-space:1rem;
  background:var(--br-paper);color:var(--br-ink);
  border-top:3px solid var(--br-ink);border-bottom:1px solid var(--br-line);
  padding:calc(var(--br-space) * 2) 0;overflow:hidden;
  font-family:var(--sans,'DM Sans',sans-serif);
}
.brand-ribbon *,.brand-ribbon *::before,.brand-ribbon *::after {box-sizing:border-box}
.brand-ribbon-head,.brand-ribbon-foot {
  width:calc(100% - var(--br-space) * 4);max-width:1280px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;gap:calc(var(--br-space) * 1.5);
}
.brand-ribbon-head {margin-bottom:calc(var(--br-space) * 1.5)}
.brand-ribbon .brand-ribbon-eyebrow {color:#a1582b;font-size:var(--br-small);font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1.5;margin:0 0 calc(var(--br-space) / 2);max-width:none}
.brand-ribbon #brand-ribbon-title {font:600 var(--br-title)/1.15 var(--serif,'Archivo',sans-serif);color:var(--br-ink);margin:0;letter-spacing:-.025em;text-wrap:balance}
.brand-ribbon .brand-motion {display:inline-flex;align-items:center;gap:calc(var(--br-space) / 2);min-height:44px;border:1px solid #b9c6bf;border-radius:4px;background:transparent;padding:calc(var(--br-space) / 2) var(--br-space);color:var(--br-ink);font-family:inherit;font-size:var(--br-small);font-weight:600;white-space:nowrap;cursor:pointer}
.brand-motion svg {width:18px;height:18px;flex-shrink:0}
.brand-play-icon {display:none}
.brand-paused .brand-pause-icon {display:none}
.brand-paused .brand-play-icon {display:block}
.brand-ribbon-rows {display:grid;gap:var(--br-space)}
.brand-ribbon-viewport {width:100%;overflow:hidden;scrollbar-width:thin;scrollbar-color:#94aaa1 transparent}
.brand-ribbon-track {--brand-duration:68s;display:flex;width:max-content;animation:brand-drift var(--brand-duration) linear infinite;animation-delay:var(--brand-delay,0s);will-change:transform}
.brand-reverse {--brand-duration:74s;animation-direction:reverse}
.brand-ribbon-group {display:flex;flex-shrink:0;gap:var(--br-space);list-style:none;margin:0;padding:0 var(--br-space) 0 0}
.brand-ribbon-group li {list-style:none;margin:0;padding:0}
.brand-ribbon .brand-tile {display:flex;flex-direction:column;align-items:center;justify-content:center;width:232px;height:120px;gap:calc(var(--br-space) / 2);padding:var(--br-space) calc(var(--br-space) * 1.5);background:#fff;color:var(--br-ink);border:1px solid var(--br-line);border-radius:4px;text-decoration:none}
.brand-ribbon .brand-tile img {display:block;width:100%;height:64px;max-width:184px;object-fit:contain;filter:none;opacity:1}
.brand-ribbon .brand-tile span {font-size:var(--br-small);line-height:1.4;text-align:center;color:#55676a;white-space:nowrap}
.brand-ribbon .brand-tile-dark {background:#173b50;border-color:#173b50}
.brand-ribbon .brand-tile-dark span {color:#fff}
.brand-ribbon .brand-tile:hover {border-color:#9cae9e}
.brand-ribbon .brand-image-fallback {font-size:var(--br-body);text-align:center}
.brand-ribbon-foot {align-items:flex-start;margin-top:calc(var(--br-space) * 1.5);font-size:var(--br-small)}
.brand-ribbon .brand-more {flex:1;min-width:0}
.brand-ribbon .brand-more summary {cursor:pointer;width:fit-content;font-weight:600;min-height:28px;color:#526660}
.brand-ribbon .brand-more p {max-width:900px;margin:calc(var(--br-space) / 2) 0 0;font-size:var(--br-small);line-height:1.7;color:#526660}
.brand-ribbon .brand-explore {color:var(--br-ink);font-weight:700;text-decoration:none;white-space:nowrap;padding-bottom:4px;border-bottom:1px solid #9cae9e}
.brand-ribbon :focus-visible {outline:2px solid #b56832;outline-offset:4px}
.brand-ribbon:hover .brand-ribbon-track,.brand-ribbon-viewport:focus-within .brand-ribbon-track {animation-play-state:paused}
.brand-paused .brand-ribbon-viewport {overflow-x:auto}
.brand-paused .brand-ribbon-track {animation:none;transform:none;will-change:auto}
.brand-paused .brand-ribbon-group[aria-hidden] {display:none}
@keyframes brand-drift {to {transform:translateX(-50%)}}
@media(max-width:600px) {
  .brand-ribbon {padding:calc(var(--br-space) * 1.5) 0}
  .brand-ribbon-head,.brand-ribbon-foot {width:calc(100% - var(--br-space) * 2);gap:var(--br-space)}
  .brand-ribbon-head {align-items:flex-end}
  .brand-ribbon .brand-motion {padding:calc(var(--br-space) / 2);font-size:var(--br-small)}
  .brand-ribbon .brand-tile {width:180px;height:108px;padding:calc(var(--br-space) * .75) var(--br-space)}
  .brand-ribbon .brand-tile img {height:58px}
  .brand-ribbon-track {--brand-duration:78s}
  .brand-reverse {--brand-duration:84s}
  .brand-ribbon-foot {flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce) {
  .brand-motion {display:none!important}
  .brand-ribbon-track {animation:none;will-change:auto}
  .brand-ribbon-viewport {overflow-x:auto}
  .brand-ribbon-group[aria-hidden] {display:none}
}
