/* Google-Rezensionen: existing black-and-gold design, with readable static fallback. */
.reviews-bg [hidden], .review-lightbox[hidden] { display: none !important; }
.hero-trust-txt small,
.stat-lbl small { display: block; margin-top: .2rem; color: var(--muted); font-size: .68rem; font-weight: 400; letter-spacing: .02em; text-transform: none; }
.review-stat-link { color: inherit; text-decoration: none; }
.review-stat-link:hover { color: var(--gold); }
.reviews-source { max-width: 48rem; margin: .9rem auto 0; color: var(--soft); font-size: .82rem; line-height: 1.55; }
.reviews-motion-toggle,
.reviews-expand-toggle { min-height: 44px; margin: 1.25rem .35rem 0; padding: .65rem 1rem; border: 1px solid var(--gold); border-radius: 0; background: transparent; color: var(--white); font: inherit; font-size: .78rem; cursor: pointer; }
.reviews-motion-toggle:hover,
.reviews-expand-toggle:hover { background: rgba(201,168,76,.13); }
.reviews-bg button:focus-visible,
.review-lightbox button:focus-visible,
.review-stat-link:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.reviews-cols { max-height: none; overflow: visible; -webkit-mask-image: none; mask-image: none; }
.review-col { max-height: none; overflow: visible; -webkit-mask-image: none; mask-image: none; }
.review-scroll { gap: 0; animation: none !important; }
.review-set { display: flex; flex-direction: column; gap: 1.2rem; padding-bottom: 1.2rem; }
.review-card:last-child { margin-bottom: 0; }
.review-stars { line-height: 1.25; }
.review-text { overflow-wrap: anywhere; }
.review-photos { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.review-thumb { display: block; min-width: 64px; min-height: 64px; padding: 0; border: 1px solid rgba(201,168,76,.6); border-radius: 0; background: var(--card); cursor: zoom-in; }
.review-thumb img { display: block; width: 80px; height: 80px; object-fit: cover; }
.reviews-cols.is-animated { max-height: 720px; overflow: hidden; -webkit-mask-image: linear-gradient(to bottom,transparent 0%,black 15%,black 85%,transparent 100%); mask-image: linear-gradient(to bottom,transparent 0%,black 15%,black 85%,transparent 100%); }
.reviews-cols.is-animated .review-col { height: 720px; overflow: hidden; }
.reviews-cols.is-animated .review-col.is-static { height: auto; overflow: visible; align-self: center; }
.reviews-cols.is-animated .review-scroll { animation: scrollUp var(--review-duration, 30s) linear infinite !important; }
.reviews-cols.is-animated .review-col.is-static .review-scroll { animation: none !important; }
.reviews-cols.is-animated:is(.is-paused,.is-modal-open) .review-scroll,
.reviews-cols.is-animated .review-col:is(:hover,:focus-within) .review-scroll { animation-play-state: paused !important; }
.reviews-cols.is-expanded .review-set[aria-hidden="true"] { display: none; }
.review-lightbox { position: fixed; inset: 0; z-index: 10000; display: grid; place-items: center; padding: 1rem; background: rgba(0,0,0,.93); }
.review-lightbox-panel { position: relative; display: grid; grid-template-columns: 52px minmax(0,1fr) 52px; align-items: center; gap: .75rem; width: min(100%, 1100px); max-height: 100%; }
.review-lightbox figure { min-width: 0; margin: 0; text-align: center; }
.review-lightbox-image { display: block; width: 100%; max-height: calc(100dvh - 8rem); object-fit: contain; }
.review-lightbox-caption { margin-top: .65rem; color: var(--white); font-size: .82rem; line-height: 1.5; }
.review-lightbox button { display: grid; place-items: center; width: 48px; height: 48px; padding: 0; border: 1px solid var(--gold); border-radius: 0; background: #16161a; color: var(--white); font: inherit; font-size: 2rem; cursor: pointer; }
.review-lightbox button:disabled { opacity: .4; cursor: default; }
.review-lightbox-close { position: absolute; z-index: 1; top: 0; right: 0; transform: translateY(calc(-100% - .5rem)); }
.review-lightbox-prev { grid-column: 1; }
.review-lightbox-next { grid-column: 3; grid-row: 1; }
@media (max-width: 900px) {
  .reviews-cols.is-animated { max-height: none; }
  .reviews-cols.is-animated .review-col { height: 320px; max-height: none; }
}
@media (max-width: 600px) {
  .reviews-cols.is-animated .review-col { height: 290px; max-height: none; }
  .review-lightbox-panel { grid-template-columns: 44px minmax(0,1fr) 44px; gap: .25rem; }
  .review-lightbox button { width: 44px; height: 44px; }
  .review-lightbox-close { top: .25rem; right: .25rem; transform: none; }
  .review-lightbox-image { max-height: calc(100dvh - 9rem); }
}
@media (prefers-reduced-motion: reduce) {
  .reviews-cols.is-animated { max-height: none; overflow: visible; -webkit-mask-image: none; mask-image: none; }
  .reviews-cols.is-animated .review-col { height: auto; overflow: visible; }
  .reviews-cols.is-animated .review-scroll { animation: none !important; }
  .review-set[aria-hidden="true"] { display: none; }
}
