/* Shared equipment catalog, matching the v4.13 two-row reference. */
div#services.catalog-two-rows {
    --catalog-card-height:264px; --catalog-image-height:156px;
    display:grid; grid-template-columns:260px minmax(0,1fr);
    grid-template-rows:auto auto auto; align-items:start; gap:15px;
    height:auto; min-height:0;
}
div#services.catalog-two-rows > #vendorsCategory {
    grid-column:1; grid-row:1/4; position:static; float:none;
    width:auto; height:auto; min-height:0; margin:0; align-self:stretch;
    contain:size; overflow-x:hidden; overflow-y:auto; overscroll-behavior-y:contain;
    scrollbar-width:thin; scrollbar-color:#00ce84 #edf1ef; scrollbar-gutter:stable;
}
div#services.catalog-two-rows #vendorsCategory .moduletable {
    float:none; width:100%; height:auto; overflow:visible;
}
div#services.catalog-two-rows #vendorsCategory table { height:auto; width:100%; margin:0; }
div#services.catalog-two-rows #vendorsCategory::-webkit-scrollbar { width:7px; }
div#services.catalog-two-rows #vendorsCategory::-webkit-scrollbar-track { background:#edf1ef; }
div#services.catalog-two-rows #vendorsCategory::-webkit-scrollbar-thumb { background:#00ce84; border-radius:8px; }
div#services.catalog-two-rows #vendorsCategory:focus-visible { outline:2px solid #078354; outline-offset:-2px; }
div#services.catalog-two-rows > form.searchTechnicForm {
    grid-column:2; grid-row:1; display:flex; align-items:center; gap:12px;
    float:none; box-sizing:border-box; width:100%; min-width:0; min-height:78px; margin:0;
}
div#services.catalog-two-rows .searchTechnicIcon { flex:none; width:24px; height:24px; }
div#services.catalog-two-rows .searchTechnicForm > input {
    flex:1; box-sizing:border-box; min-width:0; width:auto; height:48px;
    padding:7px 12px 7px 35px; margin:0 0 0 7px; border-left:1px solid #bcbcbc;
}
div#services.catalog-two-rows .searchTechnicForm > button { flex:none; float:none; width:140px; height:48px; }
div#services.catalog-two-rows > ul.itemsList {
    grid-column:2; grid-row:2; display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr)); grid-auto-rows:minmax(var(--catalog-card-height),auto);
    gap:15px; float:none; box-sizing:border-box; width:100%; height:auto; min-width:0;
    margin:0; padding:15px; overflow:visible;
}
div#services.catalog-two-rows > ul.itemsList > li {
    display:flow-root; float:none; box-sizing:border-box; width:auto; height:auto;
    min-height:var(--catalog-card-height); min-width:0; margin:0; padding:5px 15px;
}
div#services.catalog-two-rows > ul.itemsList > li img {
    display:block; width:100%; height:var(--catalog-image-height); max-height:none;
    margin:0 auto; object-fit:contain;
}
div#services.catalog-two-rows > ul.itemsList > li > a.link { margin-top:5px; }
div#services.catalog-two-rows > ul.itemsList > li h5 { font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
div#services.catalog-two-rows > div.pagination.catalog-pagination {
    grid-column:2; grid-row:3; position:static; float:none; box-sizing:border-box;
    width:100%; height:auto; min-height:112px; margin:0;
}
div#services.catalog-two-rows > .catalog-brand-toggle { display:none; }
@media(max-width:1505px) {
    div#services.catalog-two-rows { --catalog-card-height:210px; --catalog-image-height:113px; }
}
@media(max-width:1325px) {
    #content.catalog-content > .center { width:calc(100% - 48px); max-width:1100px; padding:0; box-sizing:content-box; }
    div#services.catalog-two-rows { grid-template-columns:210px minmax(0,1fr); --catalog-card-height:235px; --catalog-image-height:130px; }
    div#services.catalog-two-rows > ul.itemsList { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media(min-width:601px) and (max-width:1000px) {
    div#services.catalog-two-rows { grid-template-columns:180px minmax(0,1fr); --catalog-image-height:125px; }
    div#services.catalog-two-rows > ul.itemsList { grid-template-columns:repeat(3,minmax(0,1fr)); }
    div#services.catalog-two-rows .searchTechnicForm > input { padding-left:12px; margin-left:0; }
    div#services.catalog-two-rows .searchTechnicForm > button { width:90px; }
}
@media(max-width:800px) {
    #content.catalog-content > .center { width:calc(100% - 40px); }
    #content.catalog-content > .center > h3 { font-size:24px; line-height:1.4; }
    div#services.catalog-two-rows {
        --catalog-card-height:236px; --catalog-image-height:130px;
        grid-template-columns:minmax(0,1fr); grid-template-rows:auto; gap:12px;
        grid-template-areas:"brandToggle" "search" "models" "pagination";
    }
    div#services.catalog-two-rows.catalog-brands-open {
        grid-template-areas:"brandToggle" "brands" "search" "models" "pagination";
    }
    div#services.catalog-two-rows > .catalog-brand-toggle {
        display:flex; grid-area:brandToggle; align-items:center; justify-content:space-between;
        box-sizing:border-box; min-height:48px; width:100%; padding:12px 16px;
        background:#fff; border:1px solid #dce5df; border-radius:8px; color:#25372e;
        font:500 14px/1.4 Montserrat,Arial,sans-serif; cursor:pointer;
    }
    .catalog-brand-toggle::after { content:'+'; font-size:22px; }
    .catalog-brand-toggle[aria-expanded="true"]::after { content:'−'; }
    div#services.catalog-two-rows > #vendorsCategory { display:none; }
    div#services.catalog-two-rows.catalog-brands-open > #vendorsCategory {
        display:block; grid-area:brands; width:100%; height:240px; min-height:0; max-height:240px; z-index:auto;
    }
    div#services.catalog-two-rows > form.searchTechnicForm { grid-area:search; gap:8px; padding:12px; min-height:72px; }
    div#services.catalog-two-rows .searchTechnicIcon { display:none; }
    div#services.catalog-two-rows .searchTechnicForm > input { padding:7px 0; margin:0; border-left:0; font-size:14px; }
    div#services.catalog-two-rows .searchTechnicForm > button { width:76px; font-size:13px; }
    div#services.catalog-two-rows > ul.itemsList {
        grid-area:models; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px;
        padding:0; background:transparent; box-shadow:none;
    }
    div#services.catalog-two-rows > ul.itemsList > li { padding:10px; }
    div#services.catalog-two-rows > ul.itemsList > li h5 { font-size:12px; line-height:1.5; }
    div#services.catalog-two-rows > div.pagination.catalog-pagination { grid-area:pagination; }
}


/* Preserve room for the live site navigation, which remains visible above 480px. */
@media(min-width:481px) and (max-width:1325px) {
    #content.catalog-content > .center { width:calc(100% - 150px); padding-left:110px; }
}

@media(min-width:601px) and (max-width:800px) {
    div#services.catalog-two-rows > ul.itemsList { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
