/* source_agent=codex / machine=mac-mini; proportional official marks, measured optical size and even visible gaps */
.service-logo-band{scroll-margin-top:100px;background:#fff;color:#172b3a;padding:28px 0 20px;--logo-extent:34px;--logo-slot:44px}
.service-logo-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}
.service-logo-heading h2{font-size:19px;line-height:1.5;letter-spacing:.015em;font-weight:600}
.service-logo-rows{display:grid;gap:12px}.service-logo-window{min-width:0}
.service-logo-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:18px 28px;margin:0;padding:0;list-style:none}
.service-logo-item{display:flex;align-items:center;gap:max(0px,calc(12px - (var(--logo-slot) - var(--logo-extent) * var(--logo-ink-ratio,1)) / 2));min-width:0;min-height:56px;font-family:Arial,system-ui,sans-serif;font-size:17px;font-weight:600;line-height:1.4;letter-spacing:-.01em;color:#1b2630}
.service-logo-mark{position:relative;display:block;width:var(--logo-slot);height:var(--logo-slot);flex:none;overflow:hidden}
.service-logo-mark img{position:absolute;display:block;width:calc(var(--logo-extent) * var(--logo-scale,1));height:calc(var(--logo-extent) * var(--logo-scale,1));max-width:none;left:calc(50% + var(--logo-extent) * var(--logo-shift-x,0));top:calc(50% + var(--logo-extent) * var(--logo-shift-y,0));transform:translate(-50%,-50%);object-fit:contain;pointer-events:none}
.service-logo-name{min-width:0;overflow-wrap:normal}.service-logo-copy{display:none}
.service-logo-band.is-ready .service-logo-window{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent)}
.service-logo-band.is-ready .service-logo-track{display:flex;width:max-content;animation:service-logos-slide 44s linear infinite}
.service-logo-band.is-ready .service-logo-list{display:flex;flex-wrap:nowrap;flex:none;width:max-content;gap:28px;padding-left:28px;padding-right:0}
.service-logo-band.is-ready .service-logo-copy{display:flex}.service-logo-band.is-ready .service-logo-item{flex:none;white-space:nowrap;margin-left:calc((var(--logo-extent) * var(--logo-ink-ratio,1) - var(--logo-slot)) / 2)}
.service-logo-band.is-ready .service-logo-reverse{animation-direction:reverse}
.service-logo-band.is-motion-paused .service-logo-track{animation-play-state:paused}
.corporate-home .service-logo-band+.business-section{padding-top:64px}
@keyframes service-logos-slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:600px){.service-logo-band{padding-block:24px 16px;--logo-extent:30px;--logo-slot:38px}.service-logo-heading h2{font-size:17px}.service-logo-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-logo-item{font-size:15px;min-height:50px}.service-logo-mark{width:38px;height:38px}.service-logo-band.is-ready .service-logo-list{gap:24px;padding-left:24px;padding-right:0}.corporate-home .service-logo-band+.business-section{padding-top:48px}}
@media(prefers-reduced-motion:reduce){.service-logo-band .service-logo-track{animation:none!important;transform:none!important}.service-logo-band .service-logo-copy{display:none!important}}
