/* ============================================================
   Sibyl Reviews — review slider, ported verbatim from the
   approved landing drafts (sibyl-landing-drafts.vercel.app,
   css/sibyl.css) and scoped under .sibyl-reviews so nothing
   clashes with the SaaSLand theme or Elementor.
   ============================================================ */

.sibyl-reviews{
  /* night-navy design tokens */
  --sbr-space:      #0d0a33;
  --sbr-navy:       #1c1361;
  --sbr-pink:       #bf1887;
  --sbr-pink-hi:    #e84fb0;
  --sbr-gold:       #d9bd85;
  --sbr-ink:        #ffffff;
  --sbr-ink-80:     rgba(244,242,255,.82);
  --sbr-ink-60:     rgba(228,224,255,.64);
  --sbr-hairline:   rgba(243,236,221,.22);
  --sbr-hairline-2: rgba(243,236,221,.10);
  --sbr-tp-green:   #00b67a;
  --sbr-radius:     18px;

  font-family:'Poppins','Proxima Nova',system-ui,-apple-system,sans-serif;
  font-size:clamp(15.5px,1.05vw,17px);
  line-height:1.7;
  color:var(--sbr-ink-80);
}
.sibyl-reviews *,
.sibyl-reviews *::before,
.sibyl-reviews *::after{margin:0;padding:0;box-sizing:border-box}

/* ---- Trustpilot score header ---- */
.sibyl-reviews .tp-block{text-align:center;margin-bottom:2.2rem}
.sibyl-reviews .tp-score{display:flex;align-items:baseline;justify-content:center;gap:.8rem;flex-wrap:wrap}
.sibyl-reviews .tp-score .num{font-size:clamp(2.6rem,6vw,3.8rem);font-weight:600;color:var(--sbr-ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1.2}

.sibyl-reviews .tp-tiles{display:inline-flex;gap:4px}
.sibyl-reviews .tp-tiles i{position:relative;width:clamp(26px,3.2vw,34px);height:clamp(26px,3.2vw,34px);background:var(--sbr-tp-green);border-radius:2px;display:inline-block}
.sibyl-reviews .tp-tiles i::after{content:"";position:absolute;inset:0;background:#fff;
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2.2l2.6 6.2 6.7.5-5.1 4.4 1.5 6.5L12 16.3l-5.7 3.5 1.5-6.5-5.1-4.4 6.7-.5z"/></svg>') center/78% no-repeat;
  mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2.2l2.6 6.2 6.7.5-5.1 4.4 1.5 6.5L12 16.3l-5.7 3.5 1.5-6.5-5.1-4.4 6.7-.5z"/></svg>') center/78% no-repeat}
.sibyl-reviews .tp-tiles--sm i{width:17px;height:17px}

.sibyl-reviews .tp-sub{margin-top:.7rem;font-size:.95rem;color:var(--sbr-ink-60)}
.sibyl-reviews .tp-sub a{color:var(--sbr-ink-80);text-decoration:underline;text-underline-offset:3px}
.sibyl-reviews .tp-mark{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;color:#fff}
.sibyl-reviews .tp-mark i{width:16px;height:16px;background:var(--sbr-tp-green);display:inline-block;
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2.2l2.6 6.2 6.7.5-5.1 4.4 1.5 6.5L12 16.3l-5.7 3.5 1.5-6.5-5.1-4.4 6.7-.5z"/></svg>') center/contain no-repeat;
  mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 2.2l2.6 6.2 6.7.5-5.1 4.4 1.5 6.5L12 16.3l-5.7 3.5 1.5-6.5-5.1-4.4 6.7-.5z"/></svg>') center/contain no-repeat}

/* ---- Slider ---- */
.sibyl-reviews .rev-slider{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:.9rem 1rem}
.sibyl-reviews .rev-track{
  order:1;flex:1 1 100%;
  display:flex;gap:clamp(1rem,2vw,1.4rem);overflow-x:auto;min-width:0;
  scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 18px;
}
.sibyl-reviews .rev-track::-webkit-scrollbar{display:none}
.sibyl-reviews .rev-track .quote{
  flex:0 0 clamp(260px, calc((100% - 2 * clamp(1rem,2vw,1.4rem)) / 3), 420px);
  scroll-snap-align:start;margin:0;
}
.sibyl-reviews .rev-arrow{
  order:2;flex:none;width:42px;height:42px;border-radius:50%;cursor:pointer;
  display:grid;place-items:center;color:var(--sbr-ink-80);
  background:rgba(13,10,51,.55);border:1px solid var(--sbr-hairline-2);
  transition:border-color .3s, color .3s, box-shadow .3s;
}
.sibyl-reviews .rev-arrow:hover{color:#fff;border-color:rgba(232,79,176,.6);box-shadow:0 0 18px rgba(232,79,176,.25)}
.sibyl-reviews .rev-arrow:focus-visible{outline:2px solid var(--sbr-pink-hi);outline-offset:3px}
.sibyl-reviews .rev-arrow svg{width:16px;height:16px;fill:none;stroke:currentColor}
.sibyl-reviews .rev-arrow--prev svg{transform:rotate(180deg)}
@media (max-width:700px){
  .sibyl-reviews .rev-track .quote{flex-basis:84%}
}

/* ---- Quote cards (glass panels) ---- */
.sibyl-reviews .panel{
  background:linear-gradient(165deg, rgba(52,39,148,.72), rgba(24,16,86,.82));
  border:1px solid var(--sbr-hairline-2);
  border-top-color:var(--sbr-hairline);
  border-radius:var(--sbr-radius);
  box-shadow:0 14px 34px rgba(8,5,35,.32);
}
.sibyl-reviews .quote{padding:1.7rem 1.6rem;display:flex;flex-direction:column;gap:1rem}
.sibyl-reviews .quote p{font-size:.96rem;color:var(--sbr-ink-80);flex:1;line-height:1.7}
.sibyl-reviews .quote p b,
.sibyl-reviews .quote p strong{color:var(--sbr-ink);font-weight:600}
.sibyl-reviews .quote cite{font-style:normal;font-size:.86rem;color:var(--sbr-ink-60)}
.sibyl-reviews .quote cite b{color:var(--sbr-ink-80);font-weight:500}
