/* ============================================================
   landing-7.css — real brand logos + animated Google rating
   ============================================================ */

/* ---- Real brand logos in trust bar ---- */
.trust__row { gap: 44px; }
.brand-img {
  height: 26px;
  width: auto;
  object-fit: contain;
  filter: grayscale(1) brightness(0.35);
  opacity: 0.62;
  transition: opacity .2s ease, filter .2s ease;
}
.brand-img:hover { opacity: 1; filter: grayscale(0) brightness(1); }

/* ---- Star rating block ---- */
.rating {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 12px 20px;
  border-radius: var(--r-pill);
  background: var(--paper);
  border: 1px solid var(--line);
  box-shadow: var(--sh-sm);
}
.rating--hero {
  background: rgba(255,255,255,0.07);
  border-color: rgba(255,255,255,0.16);
  backdrop-filter: blur(6px);
  box-shadow: none;
}
.rating__stars {
  display: inline-flex;
  gap: 3px;
}
.rating__star {
  width: 22px; height: 22px;
  display: block;
  color: var(--ink-3);
  transform: scale(0.4);
  opacity: 0;
}
.rating--hero .rating__star { color: rgba(255,255,255,0.3); }
.rating__star svg { width: 100%; height: 100%; display: block; }

/* pop + fill when revealed */
.rating.is-lit .rating__star {
  animation: starPop .55s cubic-bezier(.2,1.5,.4,1) forwards;
  color: #FFB22C;
}
.rating.is-lit .rating__star:nth-child(1) { animation-delay: .04s; }
.rating.is-lit .rating__star:nth-child(2) { animation-delay: .12s; }
.rating.is-lit .rating__star:nth-child(3) { animation-delay: .20s; }
.rating.is-lit .rating__star:nth-child(4) { animation-delay: .28s; }
.rating.is-lit .rating__star:nth-child(5) { animation-delay: .36s; }

@keyframes starPop {
  0%   { transform: scale(0.4) rotate(-35deg); opacity: 0; }
  55%  { transform: scale(1.35) rotate(8deg); opacity: 1; }
  100% { transform: scale(1) rotate(0); opacity: 1; }
}

/* gentle twinkle loop after lighting up */
.rating.is-lit .rating__star { will-change: transform, filter; }
.rating.is-lit .rating__star::after { content: none; }
@keyframes twinkle {
  0%, 100% { filter: drop-shadow(0 0 0 rgba(255,178,44,0)); }
  50%      { filter: drop-shadow(0 0 6px rgba(255,178,44,0.75)); }
}
.rating.is-lit .rating__stars { animation: twinkleSweep 3.2s ease-in-out 1s infinite; }
@keyframes twinkleSweep { /* placeholder no-op to keep layout */ 0%,100%{} }

/* per-star shimmer staggered */
.rating.is-lit .rating__star:nth-child(odd)  { animation: starPop .55s cubic-bezier(.2,1.5,.4,1) forwards, twinkle 2.8s ease-in-out 1s infinite; }
.rating.is-lit .rating__star:nth-child(even) { animation: starPop .55s cubic-bezier(.2,1.5,.4,1) forwards, twinkle 2.8s ease-in-out 1.4s infinite; }

.rating__meta { display: flex; flex-direction: column; line-height: 1.15; }
.rating__score {
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: var(--ink);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.rating--hero .rating__score { color: #fff; }
.rating__score .g-mark {
  font-weight: 700;
  font-size: 15px;
  background: conic-gradient(from -45deg, #4285F4, #34A853, #FBBC05, #EA4335, #4285F4);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.rating__sub { font-size: 12px; color: var(--ink-3); }
.rating--hero .rating__sub { color: rgba(255,255,255,0.6); }

/* spacing for the rating placed in testimonials head */
.testimonials__head .rating { margin-top: 22px; }
.hero__rating { margin-top: 22px; }

@media (prefers-reduced-motion: reduce) {
  .rating__star { transform: none !important; opacity: 1 !important; animation: none !important; color: #FFB22C !important; }
  .rating--hero .rating__star { color: #FFB22C !important; }
}

@media (max-width: 720px) {
  .trust__row { gap: 22px 30px; }
  .brand-img { height: 20px; }
  .rating { padding: 10px 16px; gap: 10px; }
  .rating__star { width: 19px; height: 19px; }
}
