/* Google-vélemények slider (v3.42.1) – a téma és a kiemelőszín változóival. */
.saww-reviews-container { max-width: 1180px; }
.saww-reviews-slider { position: relative; }
.saww-reviews-slider .saww-reviews-grid {
    display: grid !important;
    grid-template-columns: none !important;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 2 * 22px) / 3);
    gap: 22px !important;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    padding: 14px 4px 22px;
    margin: 0 -4px;
    align-items: start;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 28px, #000 calc(100% - 28px), transparent 100%);
}
.saww-reviews-slider .saww-reviews-grid::-webkit-scrollbar { display: none; }
.saww-reviews-slider .saww-review-card {
    scroll-snap-align: start;
    position: relative;
    min-height: 210px;
    transition: transform .45s cubic-bezier(.22, 1, .36, 1), box-shadow .45s ease, border-color .3s ease;
}
.saww-reviews-slider .saww-review-card::before {
    content: "\201D";
    position: absolute;
    top: 6px;
    right: 18px;
    font: 900 4.2rem/1 Georgia, serif;
    color: var(--accent);
    opacity: .16;
    pointer-events: none;
}
.saww-reviews-slider .saww-review-card[data-long] { cursor: pointer; }
.saww-reviews-slider .saww-review-card[data-long] .saww-review-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
}
.saww-reviews-slider .saww-review-card[data-long]::after {
    content: "Tovább olvasom";
    font-size: .82rem;
    font-weight: 700;
    color: var(--accent);
}
.saww-reviews-slider .saww-review-card.is-open .saww-review-text { -webkit-line-clamp: unset; display: block; }
.saww-reviews-slider .saww-review-card.is-open::after { content: "Kevesebb"; }
@media (hover: hover) {
    .saww-reviews-slider .saww-review-card:hover {
        transform: translateY(-6px);
        border-color: var(--accent) !important;
        box-shadow: 0 26px 50px -24px color-mix(in srgb, var(--accent) 45%, transparent) !important;
    }
}
.saww-reviews-nav {
    position: absolute;
    top: calc(50% - 22px);
    translate: 0 -50%;
    z-index: 2;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    border: 1px solid var(--border);
    background: var(--card);
    color: var(--text);
    box-shadow: var(--shadow-md);
    display: none;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color .25s ease, color .25s ease, border-color .25s ease, scale .25s ease, opacity .25s ease;
}
.saww-reviews-slider.is-ready .saww-reviews-nav { display: inline-flex; }
.saww-reviews-prev { left: -22px; }
.saww-reviews-next { right: -22px; }
.saww-reviews-nav:hover, .saww-reviews-nav:focus-visible { background: var(--accent); border-color: var(--accent); color: #fff; scale: 1.08; }
.saww-reviews-slider.at-start .saww-reviews-prev { opacity: .35; }
.saww-reviews-dots { display: flex; justify-content: center; gap: 8px; margin-top: 4px; }
.saww-reviews-dot {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 99px;
    background: var(--border);
    cursor: pointer;
    transition: width .4s cubic-bezier(.22, 1, .36, 1), background-color .3s ease;
}
.saww-reviews-dot.is-active { width: 28px; background: var(--accent); }
@media (max-width: 1024px) {
    .saww-reviews-slider .saww-reviews-grid { grid-auto-columns: calc((100% - 22px) / 2); }
}
/* Telefonon az aktuális kártya mindig középen: a sáv két oldalán 8% belső margó, a kártya a
   maradék teljes szélessége, középre pattanó snap (az első és az utolsó is középre kerül). */
@media (max-width: 680px) {
    .saww-reviews-slider .saww-reviews-grid {
        grid-auto-columns: 100%;
        gap: 14px !important;
        padding: 14px 8% 22px;
        margin: 0;
        scroll-padding-inline: 8%;
    }
    .saww-reviews-slider .saww-review-card { scroll-snap-align: center; }
    .saww-reviews-nav { display: none !important; }
}
