/* Opinie: testimonials pulled from Famewall at build time. Matches the Webflow
   theme: #02020a page, #f5f5f5 text, PT Serif headings, PT Sans body, #3d63ff accent,
   15px radius and #eff9fc1a hairline like .main-button. */
.opinie { padding: 60px 30px 20px; max-width: 1200px; margin: 0 auto; }
.opinie img { padding: 0; display: block; }
.op-text { border: 0; padding: 0; font-size: inherit; line-height: inherit; }
.op-summary { color: #8b949e; text-align: center; font-family: PT Sans, sans-serif; font-size: 15px; letter-spacing: .04em; margin: -24px 0 36px; }
.op-grid { column-count: 3; column-gap: 24px; }
.op-card { break-inside: avoid; display: block; margin: 0 0 24px; padding: 26px 26px 22px; background: #060d11; border: 1px solid #eff9fc1a; border-radius: 15px; }
.op-card.op-hidden[hidden] { display: none; }
.op-stars { color: #3d63ff; font-size: 15px; letter-spacing: 3px; margin-bottom: 14px; }
.op-text { margin: 0 0 20px; }
.op-text p { color: #f5f5f5e6; font-family: PT Sans, sans-serif; font-size: 17px; line-height: 1.55; margin: 0 0 12px; }
.op-text p:last-child { margin-bottom: 0; }
.op-shot img, .op-video img { display: block; width: 100%; height: auto; border-radius: 10px; margin: 0 0 16px; }
.op-shot { margin: 0; }
.op-video { position: relative; display: block; }
.op-play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -60%); width: 56px; height: 56px; border-radius: 50%; background: #3d63ff; color: #fff; font-size: 20px; line-height: 56px; text-align: center; padding-left: 4px; box-sizing: border-box; }
.op-author { display: flex; align-items: center; gap: 12px; }
.op-avatar { width: 44px; height: 44px; padding: 0; border-radius: 50%; object-fit: cover; flex: 0 0 44px; border: 1px solid #eff9fc1a; }
.op-initials { display: inline-flex; align-items: center; justify-content: center; background: #123ce7; color: #fff; font-family: PT Serif, serif; font-size: 15px; }
.op-who { display: flex; flex-direction: column; min-width: 0; }
.op-name { color: #fff; font-family: PT Serif, serif; font-size: 16px; line-height: 1.3; }
.op-meta { color: #8b949e; font-family: PT Sans, sans-serif; font-size: 13px; line-height: 1.4; }
.op-meta a { color: #8b949e; text-decoration: underline; text-underline-offset: 2px; }
.op-meta a:hover { color: #f5f5f5; }
.op-more { display: block; margin: 8px auto 0; padding: 18px 42px; background: #060d11; color: #fff; border: 1px solid #eff9fc80; border-radius: 15px; font-family: PT Serif, serif; font-size: 10px; letter-spacing: 4px; text-transform: uppercase; cursor: pointer; }
.op-more:hover { color: #777; }
.op-more:focus-visible { outline: 2px solid #3d63ff; outline-offset: 2px; }
@media screen and (max-width: 991px) { .op-grid { column-count: 2; } }
@media screen and (max-width: 767px) { .opinie { padding-left: 20px; padding-right: 20px; } .op-grid { column-count: auto; display: block; } .op-card { padding: 22px 20px 18px; } .op-text p { font-size: 16px; } }
