.institution-marquee { --logo-gap:12px; --logo-width:calc((100cqw - 84px)/8); container-type:inline-size; overflow:hidden; }
[data-count-to] { display:inline-block; font-variant-numeric:tabular-nums; }
[data-count-to="12"], [data-count-to="30"] { min-width:3ch; }
[data-count-to="100"], [data-count-to="150"], [data-count-to="300"] { min-width:4ch; }
[data-count-to="90"], [data-count-to="95"] { min-width:2ch; }
.institution-row { overflow:hidden; }
.institution-row + .institution-row { margin-top:12px; }
.institution-track { display:flex; width:max-content; }
.institution-group { display:flex; flex:none; gap:var(--logo-gap); list-style:none; margin:0; padding:0 var(--logo-gap) 0 0; }
.institution-group .institution-card { flex:0 0 var(--logo-width); width:var(--logo-width); }
.is-marquee-ready .institution-track { animation:institution-drift 70s linear infinite; will-change:transform; }
.is-marquee-ready .institution-row-right .institution-track { animation-direction:reverse; }
.institution-marquee.is-offscreen .institution-track { animation-play-state:paused; }
@keyframes institution-drift { from { transform:translateX(0); } to { transform:translateX(-50%); } }

.service-list.service-motion { overflow:clip; overflow-clip-margin:8px; }
.service-motion .service-tab { opacity:0; translate:-32px 0; transition:opacity .6s ease,translate .75s cubic-bezier(.16,1.1,.3,1); }
.service-motion.is-in-view .service-tab { opacity:1; translate:0 0; }
.service-motion.is-in-view .service-tab:nth-child(2) { transition-delay:70ms; }
.service-motion.is-in-view .service-tab:nth-child(3) { transition-delay:140ms; }
.service-motion.is-in-view .service-tab:nth-child(4) { transition-delay:210ms; }
.service-motion.is-in-view .service-tab:nth-child(5) { transition-delay:280ms; }
.service-motion.is-in-view .service-tab:nth-child(6) { transition-delay:350ms; }
.service-motion.is-in-view .service-tab:nth-child(7) { transition-delay:420ms; }
.service-motion:not(.is-in-view) .service-tab { transition:none; }
.service-motion:focus-within .service-tab { opacity:1; translate:0 0; transition:none; }
.service-motion .service-tab.active { animation:service-highlight 3.6s ease-in-out infinite; }
.service-motion .service-tab.active .tab-arrow { animation:service-arrow 2.4s ease-in-out infinite; }
.service-motion:not(.is-in-view) .service-tab.active,
.service-motion:not(.is-in-view) .service-tab.active .tab-arrow,
.service-motion.is-page-hidden .service-tab.active,
.service-motion.is-page-hidden .service-tab.active .tab-arrow { animation-play-state:paused; }
@keyframes service-highlight { 0%,100% { background-color:#edf6ef40; } 50% { background-color:#dcefe499; } }
@keyframes service-arrow { 0%,100% { translate:0 0; } 50% { translate:6px 0; } }
@media(max-width:600px) {
  .service-list.service-motion { overflow-x:auto; overflow-y:hidden; }
  .service-motion .service-tab { translate:0 12px; }
}

.credential-gallery.is-credential-marquee { --credential-gap:18px; --credential-width:clamp(180px,calc((100cqw - 72px)/5),240px); container-type:inline-size; display:block; overflow:hidden; padding:8px 0 20px; }
.credential-track { display:flex; width:max-content; animation:credential-drift 76s linear infinite; will-change:transform; }
.credential-group { display:flex; flex:none; gap:var(--credential-gap); padding-right:var(--credential-gap); }
.credential-group .credential-card { flex:0 0 var(--credential-width); width:var(--credential-width); }
.credential-gallery.is-offscreen .credential-track,
.credential-gallery:hover .credential-track { animation-play-state:paused; }
@keyframes credential-drift { from { transform:translateX(0); } to { transform:translateX(-50%); } }
/* Keyboard navigation exposes every original card in a stationary grid. */
.credential-gallery:has(:focus-visible) .credential-track { animation:none; transform:none; width:100%; }
.credential-gallery:has(:focus-visible) .credential-group { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); width:100%; padding:0; }
.credential-gallery:has(:focus-visible) .credential-card { width:auto; }
.credential-gallery:has(:focus-visible) .credential-group[aria-hidden='true'] { display:none; }
@media(max-width:800px) { .credential-gallery:has(:focus-visible) .credential-group { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) {
  .credential-gallery.is-credential-marquee { --credential-gap:14px; --credential-width:180px; }
  .credential-gallery:has(:focus-visible) .credential-group { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

.scroll-reveal { opacity:0; translate:0 34px; scale:.94; transition:opacity .65s ease,translate .7s cubic-bezier(.2,.75,.25,1),scale .7s cubic-bezier(.2,.75,.25,1); transition-delay:0s; }
.scroll-reveal[data-reveal-step='1'] { transition-delay:70ms; }
.scroll-reveal[data-reveal-step='2'] { transition-delay:140ms; }
.scroll-reveal[data-reveal-step='3'] { transition-delay:210ms; }
.needs-grid.concern-list { overflow:clip; overflow-clip-margin:8px; }
.concern-row.scroll-reveal { --concern-x:-110px; translate:var(--concern-x) 0; scale:.96; transition:opacity .6s ease,translate .9s cubic-bezier(.16,1.16,.3,1),scale .9s cubic-bezier(.16,1.16,.3,1); transition-delay:0s; }
.concern-row.scroll-reveal:nth-child(even) { --concern-x:110px; }
.concern-row.scroll-reveal:not(.is-revealed) { transition:none; }
.scroll-reveal.is-revealed { opacity:1; translate:0 0; scale:1; }
.scroll-reveal:focus-within { opacity:1; translate:0 0; scale:1; transition:none; }
@media(max-width:800px) { .institution-marquee { --logo-width:140px; } }
@media(max-width:600px) { .institution-marquee { --logo-width:138px; } .scroll-reveal { translate:0 24px; scale:.96; } }
@media(max-width:600px) {
  .concern-row.scroll-reveal { --concern-x:-52px; }
  .concern-row.scroll-reveal:nth-child(even) { --concern-x:52px; }
}
@media(prefers-reduced-motion:reduce) {
  .service-motion .service-tab { opacity:1; translate:none; transition:none!important; animation:none!important; }
  .service-motion .service-tab .tab-arrow { animation:none!important; translate:none; }
  .is-marquee-ready .institution-track { animation:none; transform:none; will-change:auto; }
  .institution-track { width:100%; }
  .institution-group { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); width:100%; padding:0; }
  .institution-group .institution-card { width:auto; }
  .institution-group[aria-hidden='true'] { display:none; }
  .scroll-reveal, .concern-row.scroll-reveal { opacity:1; translate:none; scale:none; transition:none; }
  .credential-track { animation:none; transform:none; width:100%; will-change:auto; }
  .credential-group { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); width:100%; padding:0; }
  .credential-group .credential-card { width:auto; }
  .credential-group[aria-hidden='true'] { display:none; }
}
@media(prefers-reduced-motion:reduce) and (max-width:800px) { .institution-group { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(prefers-reduced-motion:reduce) and (max-width:600px) { .institution-group { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(prefers-reduced-motion:reduce) and (max-width:800px) { .credential-group { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(prefers-reduced-motion:reduce) and (max-width:600px) { .credential-group { grid-template-columns:repeat(2,minmax(0,1fr)); } }
