/* Homepage organisation showcase: overrides existing static logo grid without changing the site's main CSS. */
#client-logos .brand-carousel{display:flex;align-items:center;gap:10px;width:100%;min-width:0;box-sizing:border-box;}
#client-logos .brand-carousel__arrow{box-sizing:border-box;flex:0 0 34px;display:flex;align-items:center;justify-content:center;width:34px;height:40px;border:1px solid #dce4e8;border-radius:4px;background:#fff;color:#20323f;cursor:pointer;padding:0;transition:border-color .15s ease,background-color .15s ease;}
#client-logos .brand-carousel__arrow[hidden]{display:none!important;}
#client-logos .brand-carousel__arrow:hover:not(:disabled){background:#f3f7f8;border-color:#a6bcc8;}
#client-logos .brand-carousel__arrow:focus-visible{outline:3px solid #326c91;outline-offset:3px;}
#client-logos .brand-carousel__arrow:disabled{opacity:.28;cursor:default;}
#client-logos .client-logos-grid{display:flex;flex:1 1 auto;min-width:0;gap:4px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;overflow-anchor:none;scroll-behavior:smooth;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding:0;margin:0;list-style:none;scrollbar-width:none;-ms-overflow-style:none;}
#client-logos .client-logos-grid::-webkit-scrollbar{display:none;}
#client-logos .client-logos-grid>li{box-sizing:border-box;flex:0 0 calc((100% - 16px)/5);min-width:0;scroll-snap-align:start;scroll-snap-stop:always;}
#client-logos .client-logo-tile{box-sizing:border-box;width:100%;height:136px;min-height:0;padding:4px;}
#client-logos .client-logo-media{height:100%;}
#client-logos .client-logo-media img{width:auto;height:auto;max-width:100%;max-height:124px;object-fit:contain;}
#client-logos .client-logo-wordmark{font-family:Arial,sans-serif;font-size:24px;line-height:1.15;letter-spacing:.005em;overflow-wrap:anywhere;color:#233b47;}
#client-logos .client-logo-wordmark strong{font-weight:700;}
#client-logos .client-logo-wordmark small{font-size:13px;line-height:1.2;letter-spacing:.015em;margin-top:5px;}
@media(max-width:900px){
 #client-logos .client-logos-grid>li{flex-basis:calc((100% - 7px)/3);}
 #client-logos .client-logos-grid{gap:3.5px;}
 #client-logos .client-logo-tile{height:115px;}
 #client-logos .client-logo-media img{max-height:95px;}
}
@media(max-width:540px){
 #client-logos .brand-carousel{gap:6px;}
 #client-logos .brand-carousel__arrow{flex-basis:30px;width:30px;height:38px;}
 #client-logos .client-logos-grid{gap:0;}
 #client-logos .client-logos-grid>li{flex-basis:100%;}
 #client-logos .client-logo-tile{height:104px;min-height:0;padding:4px;}
 #client-logos .client-logo-wordmark{font-size:15px;line-height:1.15;}
 #client-logos .client-logo-wordmark small{font-size:11px;}
 #client-logos .client-logo-media img{max-height:80px;}
 #client-logos .client-logos-intro p{margin-bottom:15px;}
}
@media(prefers-reduced-motion:reduce){
 #client-logos .client-logos-grid{scroll-behavior:auto;}
 #client-logos .brand-carousel__arrow{transition:none;}
}

/* Homepage client showcase: keep the requested spacing and type sizes across breakpoints. */
.home main section#client-logos {
  display: block;
  float: none;
  clear: both;
  box-sizing: border-box;
  width: 100%;
  padding: 30px 25px 0;
  margin: 15px 0 25px;
  color: #20323f;
  text-align: center;
  border-bottom: 0;
  border-top: 2px solid #eee;
}
#client-logos .client-logos-intro h2 {font-size: 2.188em; line-height: 1.18;}
#client-logos .client-logos-intro p {font-size: 18px;}
