/* AWARDS: five award cards on a lit shelf, dark ink */
.trust { position: relative; padding-block: clamp(64px, 10vh, 112px) clamp(56px, 8vh, 96px); overflow: clip; isolation: isolate; }
.trust__defs { position: absolute; width: 0; height: 0; overflow: hidden; }
.trust__light {
  position: absolute; inset: -10% -20% 0; z-index: -1; pointer-events: none;
  background:
    radial-gradient(38% 52% at 50% 0%, rgba(120, 160, 255, .2), transparent 70%),
    radial-gradient(26% 30% at 50% 78%, rgba(244, 160, 28, .14), transparent 70%),
    radial-gradient(22% 30% at 12% 88%, rgba(166, 210, 43, .08), transparent 70%);
}
.trust__light::after { /* a faint beam falling on the shelf */
  content: ""; position: absolute; left: 50%; top: 0; width: 70%; height: 92%; transform: translateX(-50%);
  background: conic-gradient(from 180deg at 50% 0%, transparent 162deg, rgba(200, 215, 255, .07) 172deg, rgba(200, 215, 255, .11) 180deg, rgba(200, 215, 255, .07) 188deg, transparent 198deg);
}
.trust__head { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 24px 64px; margin-bottom: clamp(40px, 6vh, 64px); }
.trust__copy { display: grid; gap: 16px; }
.trust__copy .lede { color: #c9d1ea; }
.trust__stat { display: grid; justify-items: end; text-align: right; line-height: 1; padding-bottom: 6px; }
.trust__stat strong { font-family: var(--display); font-weight: 800; font-size: clamp(3rem, 4.4vw, 4rem); letter-spacing: -.03em; color: var(--lime); }
.trust__stat span { margin-top: 8px; font-size: 1rem; color: #c9d1ea; font-weight: 500; }

/* the shelf */
.trust__shelf { position: relative; }
.trust__row { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: clamp(14px, 1.6vw, 24px); align-items: stretch; perspective: 1400px; }
.award { position: relative; min-width: 0; display: flex; }
.award::after { /* contact shadow on the plank */
  content: ""; position: absolute; left: 8%; right: 8%; bottom: -10px; height: 18px; border-radius: 50%; background: rgba(0, 0, 0, .45); filter: blur(8px); z-index: -1;
}
.award__card {
  position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; text-align: center;
  flex: 1; width: 100%; padding: clamp(18px, 2.6vh, 28px) 16px clamp(20px, 3vh, 30px); border-radius: var(--r);
  background: linear-gradient(165deg, #2a3672 0%, var(--ink-2) 42%, #131a3f 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .16), inset 0 0 0 1px rgba(255, 255, 255, .07), 0 34px 44px -26px rgba(0, 0, 0, .75);
  transform-style: flat; will-change: transform;
}
.award--gold .award__card { --tone: #ffd98a; }
.award--silver .award__card { --tone: #d6e0f7; background: linear-gradient(165deg, #263159 0%, #1b2349 42%, #121937 100%); }
.award__wreath { position: relative; width: min(100%, clamp(170px, 24vh, 214px)); aspect-ratio: 1; margin: 0 auto 14px; flex: none; }
.laurel { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.laurel__stem { fill: none; stroke: url(#tr-gold); stroke-width: 2.4; stroke-linecap: round; }
.laurel__leaf { fill: url(#tr-gold); }
.laurel__ribbon { fill: var(--orange); }
.award--silver .laurel__stem { stroke: url(#tr-silver); }
.award--silver .laurel__leaf { fill: url(#tr-silver); }
.award--silver .laurel__ribbon { fill: #8d9fcb; }
.award__badge { position: absolute; inset: 0; display: grid; place-content: center; gap: 0; line-height: 1; padding-bottom: 6px; }
.award__badge span { font-size: .875rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: var(--tone); }
.award__badge strong { margin-top: 6px; font-family: var(--display); font-weight: 800; font-size: clamp(2rem, 2.3vw, 2.3rem); letter-spacing: -.02em; color: var(--paper); }
.award__name { font-size: clamp(1.08rem, 1.2vw, 1.22rem); line-height: 1.22; letter-spacing: -.005em; color: var(--paper); }
.award__sub { margin-top: 6px; font-size: .92rem; line-height: 1.3; color: #c9d1ea; }
.award__glare {
  position: absolute; inset: 0; pointer-events: none; z-index: 2; opacity: 0; transition: opacity .45s var(--ease);
  background: radial-gradient(circle at var(--gx, 50%) var(--gy, 0%), rgba(255, 255, 255, .26), rgba(255, 255, 255, .06) 30%, transparent 58%);
  mix-blend-mode: screen;
}
.award.is-hot .award__glare { opacity: 1; }
.award__sweep {
  position: absolute; top: -30%; bottom: -30%; left: 0; width: 46%; pointer-events: none; z-index: 2;
  background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .06) 30%, rgba(255, 236, 190, .2) 50%, rgba(255, 255, 255, .06) 70%, transparent);
  transform: translateX(-160%) skewX(-14deg); mix-blend-mode: screen;
}
.trust__plank {
  position: relative; height: 16px; margin-top: 0; z-index: -1;
  background: linear-gradient(180deg, rgba(214, 224, 247, .22), rgba(214, 224, 247, .03) 80%);
  border-top: 1px solid rgba(255, 255, 255, .38);
  box-shadow: 0 34px 70px -18px rgba(11, 143, 227, .35);
}
.trust__plank::before { /* a light that runs along the shelf edge */
  content: ""; position: absolute; left: 0; top: -2px; width: 22%; height: 3px; border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--orange), #ffe3a6, var(--lime), transparent);
  filter: blur(.5px); box-shadow: 0 0 18px 2px rgba(244, 160, 28, .55);
  animation: shelfRun 7s ease-in-out infinite alternate;
}
@keyframes shelfRun { from { transform: translateX(0); } to { transform: translateX(354%); } }
.trust__plank::after { /* soft reflection under the shelf */
  content: ""; position: absolute; left: 6%; right: 6%; top: 16px; height: 60px;
  background: radial-gradient(50% 100% at 50% 0%, rgba(160, 190, 255, .12), transparent 70%);
}
.trust__nav { display: none; }

/* tablets and phones: a swipeable row that shows where you are */
@media (max-width: 1080px) {
  .trust__head { grid-template-columns: minmax(0, 1fr); }
  .trust__stat { justify-items: start; text-align: left; grid-template-columns: auto 1fr; align-items: baseline; gap: 14px; }
  .trust__stat span { margin-top: 0; }
  .trust__row {
    display: flex; gap: 16px; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch;
    margin-inline: calc((100vw - 100%) / -2); padding: 30px calc((100vw - 100%) / 2) 18px; scroll-padding-inline: 32px;
    overscroll-behavior-x: contain;
  }
  .trust__row::-webkit-scrollbar { display: none; }
  .award { flex: 0 0 min(64vw, 270px); scroll-snap-align: start; }
  .award::after { bottom: 4px; }
  .trust__plank { margin-top: -18px; }
  .trust__nav { display: flex; align-items: center; gap: 16px; margin-top: 26px; font-size: .95rem; color: #c9d1ea; }
  .trust__count b { color: var(--paper); font-weight: 700; }
  .trust__track { position: relative; flex: 1; height: 3px; border-radius: 999px; background: rgba(255, 255, 255, .16); overflow: hidden; }
  .trust__track i { position: absolute; inset: 0; background: var(--lime); transform-origin: left; transform: scaleX(.2); }
}
@media (max-width: 640px) { .trust__row { scroll-padding-inline: 16px; } }
@media (max-width: 560px) {
  .award__wreath { width: 160px; }
}

/* glints that catch the light on each wreath */
.glint { position: absolute; width: 16px; height: 16px; pointer-events: none; color: var(--tone, #ffd98a); }
.glint svg { width: 100%; height: 100%; fill: currentColor; filter: drop-shadow(0 0 6px currentColor); }
.glint--a { left: 16%; top: 22%; }
.glint--b { right: 12%; top: 48%; width: 11px; height: 11px; }
