/* Home page: the same space between every pair of sections (measured between the content of one section and the next:
   120px on desktop, scaling down on tablets and phones; also 120px under the banner and above the red contact band).
   The old rules used different paddings, a fixed 600px height and negative margins, which left some gaps at 3px and others at 170px. */
/* gap 120px */
@media (min-width: 1101px) {
    #wb-cats { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 120px !important; padding-bottom: 34px !important; height: auto !important; }
    #custom_solution { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 110px !important; padding-bottom: 176px !important; height: auto !important; }
    #partner { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 40px !important; padding-bottom: 40px !important; height: auto !important; }
    #card2929 { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 40px !important; padding-bottom: 180px !important; height: auto !important; }
    #partner1-home { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 60px !important; padding-bottom: 12px !important; height: auto !important; }
    #table { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 60px !important; padding-bottom: 110px !important; height: auto !important; }
}
/* gap 112px */
@media (min-width: 901px) and (max-width: 1100px) {
    #wb-cats { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 112px !important; padding-bottom: 30px !important; height: auto !important; }
    #custom_solution { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 106px !important; padding-bottom: 56px !important; height: auto !important; }
    #partner { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 36px !important; padding-bottom: 36px !important; height: auto !important; }
    #card2929 { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 36px !important; padding-bottom: 46px !important; height: auto !important; }
    #partner1-home { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 56px !important; padding-bottom: 8px !important; height: auto !important; }
    #table { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 56px !important; padding-bottom: 102px !important; height: auto !important; }
}
/* gap 96px */
@media (min-width: 601px) and (max-width: 900px) {
    #wb-cats { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 96px !important; padding-bottom: 22px !important; height: auto !important; }
    #custom_solution { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 98px !important; padding-bottom: 48px !important; height: auto !important; }
    #partner { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 28px !important; padding-bottom: 28px !important; height: auto !important; }
    #card2929 { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 28px !important; padding-bottom: 58px !important; height: auto !important; }
    #partner1-home { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 48px !important; padding-bottom: 0px !important; height: auto !important; }
    #table { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 48px !important; padding-bottom: 86px !important; height: auto !important; }
}
/* gap 88px */
@media (min-width: 481px) and (max-width: 600px) {
    #wb-cats { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 88px !important; padding-bottom: 18px !important; height: auto !important; }
    #custom_solution { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 294px !important; padding-bottom: 44px !important; height: auto !important; }
    #partner { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 24px !important; padding-bottom: 24px !important; height: auto !important; }
    #card2929 { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 4px !important; padding-bottom: 175px !important; height: auto !important; }
    #partner1-home { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 44px !important; padding-bottom: 0px !important; height: auto !important; }
    #table { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 40px !important; padding-bottom: 78px !important; height: auto !important; }
}
/* gap 80px */
@media (max-width: 480px) {
    #wb-cats { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 80px !important; padding-bottom: 14px !important; height: auto !important; }
    #custom_solution { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 290px !important; padding-bottom: 40px !important; height: auto !important; }
    #partner { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 20px !important; padding-bottom: 20px !important; height: auto !important; }
    #card2929 { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 0px !important; padding-bottom: 50px !important; height: auto !important; }
    #partner1-home { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 40px !important; padding-bottom: 0px !important; height: auto !important; }
    #table { margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 32px !important; padding-bottom: 70px !important; height: auto !important; }
}

/* ===== 2026-10-13: one balanced rhythm between the home page sections (replaces the 120px one above): 80px between the content of one section and the next on desktop,
   72 / 64 / 56px on smaller screens. (Each number below = the gap minus the space the section's own content already has inside it.) ===== */
@media (min-width: 1101px) {
    section#wb-cats { padding-top: 80px !important; padding-bottom: 54px !important; }
    section.hc-split { margin-top: 0 !important; margin-bottom: 0 !important; }
    section#partner { padding-top: 60px !important; padding-bottom: 60px !important; }
    section#partner1-home { padding-top: 80px !important; padding-bottom: 56px !important; }
    section.wb-news { padding-top: 96px !important; padding-bottom: 96px !important; }
}
@media (min-width: 901px) and (max-width: 1100px) {
    section#wb-cats { padding-top: 72px !important; padding-bottom: 46px !important; }
    section.hc-split { margin-top: 0 !important; margin-bottom: 0 !important; }
    section#partner { padding-top: 52px !important; padding-bottom: 52px !important; }
    section#partner1-home { padding-top: 72px !important; padding-bottom: 48px !important; }
    section.wb-news { padding-top: 88px !important; padding-bottom: 88px !important; }
}
@media (min-width: 601px) and (max-width: 900px) {
    section#wb-cats { padding-top: 64px !important; padding-bottom: 38px !important; }
    section.hc-split { margin-top: 0 !important; margin-bottom: 0 !important; }
    section#partner { padding-top: 44px !important; padding-bottom: 44px !important; }
    section#partner1-home { padding-top: 64px !important; padding-bottom: 40px !important; }
    section.wb-news { padding-top: 80px !important; padding-bottom: 80px !important; }
}
@media (max-width: 600px) {
    section#wb-cats { padding-top: 56px !important; padding-bottom: 30px !important; }
    section.hc-split { margin-top: 0 !important; margin-bottom: 0 !important; }
    section#partner { padding-top: 36px !important; padding-bottom: 36px !important; }
    section#partner1-home { padding-top: 56px !important; padding-bottom: 32px !important; }
    section.wb-news { padding-top: 72px !important; padding-bottom: 72px !important; }
}
