/* One folded route with room for each partner mark to spring above its lane. */
.everest-home .home-brands { background: var(--light, #f5f7fa); padding-block: clamp(52px, 6vw, 92px); overflow: clip; }
.brand-flow { --brand-card-width: 230.4px; --brand-row-height: 108px; --brand-row-gap: 6px; --brand-row-inset: 12px; --brand-edge-space: 12px; }
.brand-flow-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 30px; }
.brand-flow-heading h2 { margin: 0; max-width: 22ch; color: var(--ewerest-heading-ink, var(--ink, #17212d)); font-size: clamp(28px, 3.3vw, 48px); line-height: 1.08; letter-spacing: -.035em; font-weight: 600; }
.brand-flow-heading h2 > span { display: block; color: var(--ewerest-heading-accent, var(--blue, #1769e8)); }
.brand-flow-actions { display: flex; align-items: center; gap: 20px; flex-shrink: 0; }
.brand-flow-actions > .text-link { color: var(--navy, #183451); white-space: nowrap; }
.brand-flow-bleed { width: 100vw; margin-left: calc(50% - 50vw); position: relative; isolation: isolate; }
.brand-flow-viewport { position: relative; overflow-x: auto; overflow-y: hidden; padding: 0; height: calc(var(--brand-row-height) * 2 + var(--brand-row-gap) + var(--brand-edge-space) * 2); scrollbar-width: thin; scrollbar-color: #aab4c2 transparent; background: transparent; border: 0; }
.brand-flow-list { position: relative; list-style: none; padding: var(--brand-edge-space) 22px; margin: 0; display: grid; grid-template-rows: repeat(2, var(--brand-row-height)); grid-auto-flow: column; grid-auto-columns: var(--brand-card-width); gap: var(--brand-row-gap) 22px; width: max-content; min-width: 100%; }
.brand-flow-item { width: var(--brand-card-width); height: var(--brand-row-height); margin: 0; padding: 0; display: flex; align-items: center; justify-content: center; }
.brand-flow-mark { width: 100%; height: calc(var(--brand-row-height) - var(--brand-row-inset)); display: flex; align-items: center; justify-content: center; padding: 14px 20px; border: 1px solid #e1e7ef; border-radius: 10px; background: #fff; text-decoration: none; color: #173856; box-shadow: none; transform: scale(1); transform-origin: center; transition: transform 620ms cubic-bezier(.22, 1.45, .4, 1), background 160ms ease, border-color 160ms ease; }
.brand-flow-mark > img { display: block; width: auto; height: auto; max-width: 100%; max-height: 51.6px; object-fit: contain; }
.brand-flow-item[data-brand-id="fag"] img { max-width: 132px; }
.brand-flow-name { font-family: inherit; font-weight: 700; font-size: 25px; line-height: 1.1; letter-spacing: -.025em; color: var(--navy, #183451); white-space: nowrap; }
.brand-flow-item[data-brand-id="link-belt"] .brand-flow-name,
.brand-flow-item[data-brand-id="sealmaster"] .brand-flow-name { font-size: 20px; letter-spacing: -.04em; }
.brand-flow-mark:hover, .brand-flow-mark:focus-visible { transform: scale(1.15); background: #fff; border-color: #b2c6df; }
.brand-flow-item:has(.brand-flow-mark:hover), .brand-flow-item:focus-within { z-index: 1; }
.brand-flow a:focus-visible { outline: 3px solid var(--blue, #1769e8); outline-offset: 4px; }

.brand-flow[data-brand-ready] .brand-flow-viewport { overflow: hidden; }
.brand-flow[data-brand-ready] .brand-flow-list { display: block; width: 100%; height: 100%; padding: 0; }
.brand-flow[data-brand-ready] .brand-flow-item { position: absolute; top: 0; left: 0; offset-path: var(--brand-route); offset-anchor: center; offset-position: 0 0; offset-rotate: 0deg; animation: everest-brand-loop var(--brand-cycle) linear infinite; animation-delay: calc(var(--brand-index) * var(--brand-step) * -1); }
.brand-flow[data-brand-offscreen="true"] .brand-flow-item,
.brand-flow:focus-within .brand-flow-item { animation-play-state: paused; }
@keyframes everest-brand-loop { from { offset-distance: 0%; } to { offset-distance: 100%; } }
@media (max-width: 700px) {
  .brand-flow { --brand-card-width: 172.8px; --brand-row-height: 91.2px; --brand-row-gap: 4px; }
  .brand-flow-heading { align-items: flex-start; flex-direction: column; gap: 18px; margin-bottom: 25px; }
  .brand-flow-heading h2 { font-size: 30px; }
  .brand-flow-actions { width: 100%; justify-content: space-between; }
  .brand-flow-actions > .text-link { font-size: 13px; }
  .brand-flow-mark { padding: 12px 16px; border-radius: 8px; }
  .brand-flow-mark > img { max-height: 42px; }
  .brand-flow-name { font-size: 20px; }
  .brand-flow-item[data-brand-id="link-belt"] .brand-flow-name,
  .brand-flow-item[data-brand-id="sealmaster"] .brand-flow-name { font-size: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .brand-flow .brand-flow-item { animation: none !important; offset-path: none !important; }
  .brand-flow .brand-flow-mark { transition: none; }
  .brand-flow .brand-flow-mark:hover, .brand-flow .brand-flow-mark:focus-visible { transform: none; }
}

/* Keyboard navigation exposes the same list as two stable, scrollable rows. */
.brand-flow[data-brand-keyboard] .brand-flow-viewport { overflow-x: auto; }
.brand-flow[data-brand-keyboard] .brand-flow-list { display: grid; width: max-content; height: auto; padding: var(--brand-edge-space) 22px; }
.brand-flow[data-brand-keyboard] .brand-flow-item { position: static; offset-path: none; animation: none; }
