/* Local homepage Systems only. Catalogue terms and other sections are untouched. */
.avm-systems { background: #eff1f6; color: #080a1d; scroll-margin-top: 80px; }
.avm-systems, .avm-systems * { box-sizing: border-box; }
.avm-systems ::selection { background: #f5a123; color: #080a1d; }
.avm-systems__inner { max-width: 1440px; margin: 0 auto; padding: 36px 20px; }
.avm-systems__header { margin-bottom: 20px; }
.avm-systems h2 { margin: 0; font: 400 28px/1.15 'Akzidenz-Grotesk Pro Bold Ext', Helvetica, Arial, sans-serif; letter-spacing: -.025em; text-wrap: balance; color: #080a1d; }
.avm-systems h2::before { content: ''; display: inline-block; width: 8px; height: 8px; margin: 0 12px 5px 0; background: #f5a123; }
.avm-systems__model { white-space: nowrap; }
.avm-systems .avm-systems__grid { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 10px; }
.avm-systems__grid > li { display: flex; min-width: 0; margin: 0; padding: 0; }
.avm-systems .avm-system { position: relative; width: 100%; min-width: 0; min-height: 88px; display: flex; align-items: center; gap: 8px; padding: 20px 10px; background: #fff; color: #080a1d; text-decoration: none; border: 0; transition: background-color 160ms ease-out, color 160ms ease-out; }
.avm-system__icon { display: block; flex-shrink: 0; width: 24px; height: 24px; color: #1d2943; }
.avm-system__accent { stroke: #012fea; }
.avm-system__copy { display: block; width: 100%; min-width: 0; }
.avm-system__name { display: block; font: 500 14px/1.35 Helvetica, Arial, sans-serif; overflow-wrap: break-word; hyphens: none; }
.avm-system__arrow { position: absolute; top: 7px; right: 8px; width: 11px; height: 11px; flex-shrink: 0; color: #65718a; }
.avm-systems .avm-systems__all { display: flex; justify-content: space-between; align-items: center; gap: 18px; width: 100%; min-height: 50px; margin-top: 24px; padding: 14px 18px; background: #012fea; color: #fff; font: 400 15px/1.4 Helvetica, Arial, sans-serif; text-decoration: none; }
.avm-systems__all svg { flex-shrink: 0; }
.avm-systems a:focus-visible { outline: 3px solid #012fea !important; outline-offset: 3px; }
.avm-systems .avm-system:focus-visible { background: #e5ebff; }
.avm-systems .avm-system:active { background: #dde5ff; }
@media (hover: hover) and (pointer: fine) {
    .avm-systems .avm-system:hover { background: #e5ebff; color: #012fea; }
    .avm-system:hover .avm-system__icon, .avm-system:hover .avm-system__arrow { color: #012fea; }
    .avm-systems .avm-systems__all:hover { background: #173fe9; }
}
@media (min-width: 601px) {
    .avm-systems__inner { padding: 40px 32px; }
    .avm-systems h2 { font-size: 36px; }
    .avm-systems .avm-systems__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
    .avm-systems .avm-system { min-height: 96px; padding: 20px 14px; gap: 10px; }
    .avm-system__icon { width: 32px; height: 32px; }
    .avm-system__name { font-size: 15px; }
    .avm-system__arrow { top: 8px; right: 10px; width: 12px; height: 12px; }
    .avm-systems .avm-systems__all { display: inline-flex; width: auto; min-width: 280px; }
}
@media (min-width: 1101px) {
    .avm-systems__inner { padding: 48px clamp(24px, 5.5vw, 88px); }
    .avm-systems__header { margin-bottom: 24px; }
    .avm-systems h2 { font-size: 42px; }
    .avm-systems .avm-systems__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
    .avm-systems .avm-system { gap: 12px; padding-inline: 16px; }
    .avm-system__icon { width: 36px; height: 36px; }
}
@media (max-width: 359px) {
    /* Very narrow phones need the full label width; never clamp category names. */
    .avm-systems .avm-system { flex-direction: column; align-items: flex-start; min-height: 108px; padding: 12px 8px; }
}
@media (prefers-reduced-motion: reduce) {
    .avm-systems .avm-system { transition: none; }
}
