/* A compact, editorial client showcase with deliberate, user-controlled motion. */
#awards { scroll-margin-top: 120px; }
#awards .services__head { margin-bottom: 32px; }
#awards .services__title { white-space: normal; }
#awards .services__sub { max-width: 550px; font-size: 17px; line-height: 1.5; }
.client-showcase.awards-show { display: block; max-width: 1120px; width: 100%; }
.client-selector { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-bottom: 16px; }
.client-selector__button { position: relative; cursor: pointer; height: 86px; padding: 20px 24px; border: 1px solid #172a1f14; border-radius: 14px; background: #ffffff9e; transition: background .25s, border-color .25s, transform .25s; }
.client-selector__button img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; opacity: .55; transition: opacity .25s; }
.client-selector__button[aria-pressed="true"] { background: #fff; border-color: #65a742; box-shadow: 0 3px 0 #76df27; }
.client-selector__button[aria-pressed="true"] img, .client-selector__button:hover img { opacity: 1; }
.client-selector__button:hover { background: #fff; transform: translateY(-2px); }
.client-selector__button:focus-visible, .client-story__arrow:focus-visible { outline: 3px solid #76df27; outline-offset: 4px; }
.client-story { padding: clamp(28px, 4vw, 56px); border: 1px solid #ffffff24; border-radius: 22px; color: #f6faf5; background: #142a20; box-shadow: 0 18px 48px -32px #11291f55; }
.client-story__top { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 24px; }
.client-story__eyebrow { display: flex; align-items: center; gap: 9px; color: #c4d1c2; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; }
.client-story__eyebrow::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #91ed53; }
.client-story__service { color: #d0e1c9; font-size: 14px; }
.client-story__quote { max-width: 940px; min-height: 5.6em; margin: 0; color: #f5faf2; font-size: clamp(23px, 2.3vw, 34px); line-height: 1.35; letter-spacing: -.025em; font-weight: 400; text-wrap: pretty; }
.client-story__quote::before { content: '“'; color: #91ed53; }
.client-story__quote::after { content: '”'; color: #91ed53; }
.client-story__signature { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding-top: 28px; }
.client-story__author { display: flex; flex-direction: column; gap: 5px; font-size: 17px; font-weight: 500; }
.client-story__role { color: #b2c4b5; font-size: 14px; font-weight: 400; }
.client-story__logo { width: 148px; height: 60px; padding: 12px 18px; border-radius: 10px; background: white; box-sizing: border-box; }
.client-story__logo img { width: 100%; height: 100%; object-fit: contain; }
.client-story__bottom { display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid #ffffff26; margin-top: 28px; padding-top: 22px; }
.client-story__link { color: #dcebd7; font-size: 15px; text-decoration: none; text-underline-offset: 5px; }
.client-story__link:hover { text-decoration: underline; }
.client-story__controls { display: flex; align-items: center; gap: 10px; }
.client-story__count { margin-right: 10px; font-variant-numeric: tabular-nums; font-size: 13px; letter-spacing: .08em; color: #b2c4b5; }
.client-story__arrow { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid #ffffff38; border-radius: 50%; color: #fff; background: transparent; cursor: pointer; transition: background .2s, color .2s; }
.client-story__arrow:hover { background: #91ed53; border-color: #91ed53; color: #142a20; }
.client-story__arrow svg { width: 20px; height: 20px; }
@media (max-width: 768px) {
  #awards { padding-inline: var(--side-pad, 20px); }
  #awards .services__sub { font-size: 16px; }
  .client-selector { display: flex; gap: 8px; overflow-x: auto; padding: 4px 4px 8px; margin-inline: -4px; scrollbar-width: thin; scroll-snap-type: x proximity; }
  .client-selector__button { flex: 0 0 125px; height: 70px; padding: 15px 18px; scroll-snap-align: start; }
  .client-story { padding: 26px 22px; border-radius: 18px; }
  .client-story__top { flex-direction: column; align-items: flex-start; gap: 10px; margin-bottom: 22px; }
  .client-story__quote { font-size: 23px; line-height: 1.38; min-height: 0; }
  .client-story__signature { gap: 14px; align-items: flex-end; }
  .client-story__logo { width: 100px; height: 48px; padding: 10px; flex-shrink: 0; }
  .client-story__author { font-size: 16px; }
  .client-story__bottom { gap: 14px; flex-wrap: wrap; }
  .client-story__link { font-size: 14px; }
  .client-story__controls { gap: 7px; }
  .client-story__count { margin-right: 4px; }
}
@media (prefers-reduced-motion: reduce) {
  .client-selector__button, .client-selector__button img, .client-story__arrow { transition: none; }
}
