/* ── Trustpilot-style reviews ────────────────────────────────────────────── */
.home-reviews{max-width:var(--max);margin:0 auto;padding:56px 20px 8px;}
.home-reviews .section-head{grid-template-columns:1fr;align-items:end;}
.tp-wrap{background:#fff;border:1px solid #e6e9ec;border-radius:16px;padding:28px;box-shadow:0 12px 34px rgba(17,20,23,.06);}
.tp-summary{display:flex;align-items:center;gap:28px;flex-wrap:wrap;padding:6px 4px 22px;}
.tp-brand{display:flex;flex-direction:column;gap:4px;min-width:180px;}
.tp-logo{height:26px;width:auto;display:block;color:#111;}
.tp-powered{font-size:11px;color:#8a939b;letter-spacing:.4px;text-transform:uppercase;}
.tp-score{display:flex;align-items:center;gap:12px;}
.tp-score>strong{font-size:44px;line-height:1;color:#111;font-weight:800;letter-spacing:-1px;}
.tp-score-mid{display:flex;flex-direction:column;gap:2px;}
.tp-stars{display:inline-flex;gap:2px;}
.tp-star{display:block;width:20px;height:20px;flex:none;}
.tp-grade{font-size:16px;font-weight:800;color:#00b67a;}
.tp-based{font-size:13px;color:#5f6b76;border-left:1px solid #e6e9ec;padding-left:28px;max-width:160px;line-height:1.45;}
.tp-based strong{color:#111;}
.tp-dist{display:flex;flex-direction:column;gap:3px;margin-left:auto;min-width:210px;}
.tp-dist-row{display:flex;align-items:center;gap:8px;font-size:11px;color:#5f6b76;}
.tp-dist-lbl{width:26px;text-align:right;flex:none;}
.tp-dist-bar{flex:1;height:8px;background:#eef1f4;border-radius:4px;overflow:hidden;}
.tp-dist-bar i{display:block;height:100%;background:#00b67a;border-radius:4px;}
.tp-dist-row em{width:36px;font-style:normal;color:#8a939b;text-align:right;font-size:11px;}
.tp-grid{display:flex;align-items:center;justify-content:center;gap:12px;padding:4px 0 20px;}
.tp-spacer{display:block;height:1px;}
.tp-card{background:#fff;border:1px solid #e9ecf0;border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:10px;text-align:left;flex:0 0 var(--tp-card-w,min(560px,94%));max-width:94%;box-shadow:0 2px 8px rgba(17,20,23,.04);transform:scale(.85);opacity:.45;transition:transform .5s cubic-bezier(.22,.61,.36,1),opacity .5s ease,box-shadow .5s ease,border-color .5s ease;}
.tp-card.active{transform:scale(1);opacity:1;border-color:#dde2e8;box-shadow:0 16px 40px rgba(17,20,23,.12);}
.tp-carousel{position:relative;overflow:hidden;padding:0 12px;}
.tp-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid #e3e7ec;background:#fff;color:#111;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 22px rgba(17,20,23,.14);transition:background .2s,color .2s,box-shadow .2s,border-color .2s,opacity .2s;}
.tp-arrow svg{width:22px;height:22px;}
.tp-arrow:hover:not(:disabled){background:#00b67a;color:#fff;border-color:#00b67a;box-shadow:0 8px 24px rgba(0,182,122,.4);}
.tp-arrow:disabled{opacity:.25;cursor:default;box-shadow:none;}
.tp-prev{left:10px;}
.tp-next{right:10px;}
.tp-count{display:flex;align-items:center;justify-content:center;gap:4px;font-size:12px;font-weight:700;color:#8a939b;letter-spacing:.5px;padding-bottom:4px;}
.tp-count span{color:#00b67a;min-width:14px;text-align:center;}
.tp-card-head{display:flex;align-items:center;gap:10px;}
.tp-avatar{width:42px;height:42px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex:none;}
.tp-id{display:flex;flex-direction:column;min-width:0;}
.tp-id strong{font-size:15px;color:#111;font-weight:700;line-height:1.3;}
.tp-id small{font-size:12px;color:#8a939b;line-height:1.3;}
.tp-id .tp-verified{margin-left:0;align-self:flex-start;margin-top:6px;}
.tp-verified{display:inline-flex;align-items:center;gap:4px;background:#e7f7f0;color:#009966;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap;max-width:100%;}
.tp-verified svg{width:12px;height:12px;flex:none;}
.tp-card-body{display:flex;flex-direction:column;gap:6px;}
.tp-card-body time{font-size:12px;color:#8a939b;}
.tp-card-body h4{margin:0;font-size:16px;font-weight:700;color:#111;line-height:1.35;}
.tp-card-body p{margin:0;font-size:14px;line-height:1.65;color:#3c4146;}
.tp-footer{display:flex;align-items:center;justify-content:center;gap:6px;padding-top:22px;font-size:13px;color:#8a939b;}
.tp-logo-sm{height:15px;width:auto;display:block;color:#111;}
@media (max-width:760px){
  .home-reviews{padding:40px 14px 0;}
  .tp-summary{gap:16px;flex-direction:column;align-items:flex-start;}
  .tp-based{border-left:0;padding-left:0;max-width:none;}
  .tp-dist{margin-left:0;width:100%;}
  .tp-arrow{width:40px;height:40px;top:50%;}
  .tp-arrow svg{width:18px;height:18px;}
  .tp-prev{left:6px;}
  .tp-next{right:6px;}
}

/* VendPlay integration: original GTSeats card, typography and carousel treatment. */
body[data-page="home"] #homeReviews { max-width:1240px; width:calc(100% - 32px); margin:0 auto; padding:56px 0; }
#homeReviews .vp-reviews-heading { margin-bottom:24px; }
#homeReviews .vp-reviews-heading > span { color:#087e67; font-size:11px; letter-spacing:.12em; text-transform:uppercase; font-weight:700; }
#homeReviews .vp-reviews-heading h2 { font-family:"Plus Jakarta Sans",Arial,sans-serif; font-size:clamp(26px,3vw,38px); line-height:1.2; letter-spacing:-.04em; color:#142821; margin:10px 0 0; }
#homeReviews .tp-brand { min-width:0; max-width:290px; }
#homeReviews .tp-logo { width:140px; height:auto; }
#homeReviews .tp-powered { font-size:10px; text-transform:none; letter-spacing:0; margin-top:6px; }
#homeReviews .vp-reviews-summary { border-left:1px solid #e6e9ec; padding-left:28px; display:flex; flex-direction:column; gap:4px; }
#homeReviews .vp-reviews-summary strong { font-size:19px; color:#182a22; }
#homeReviews .vp-reviews-summary span { font-size:12px; color:#6c7871; }
#homeReviews .tp-summary { border-bottom:1px solid #e6e9ec; margin-bottom:24px; }
#homeReviews .tp-carousel { padding:14px 0 22px; }
#homeReviews .tp-grid { justify-content:flex-start; align-items:stretch; padding:0; gap:16px; transition:transform .4s ease; }
#homeReviews .tp-card { flex:1; max-width:none; transform:none; opacity:1; margin:0; min-width:0; }
#homeReviews .is-ready .tp-card { flex:0 0 var(--review-width); transform:scale(.9); opacity:.38; }
#homeReviews .is-ready .tp-card.active { transform:scale(1); opacity:1; }
#homeReviews .tp-card-body h3 { margin:12px 0 4px; font:700 17px/1.4 "Plus Jakarta Sans",sans-serif; color:#172b23; }
#homeReviews .tp-card-body p { font-size:14px; line-height:1.75; }
#homeReviews .tp-prev svg { transform:rotate(180deg); }
#homeReviews .tp-arrow { top:50%; }
#homeReviews .tp-arrow:focus-visible,#homeReviews .tp-carousel:focus-visible { outline:2px solid #00b67a; outline-offset:3px; }
#homeReviews .tp-count { padding-top:5px; }
#homeReviews .tp-footer { font-size:12px; padding-top:18px; flex-wrap:wrap; }
#homeReviews .tp-footer a { color:#007e59; text-decoration:underline; text-underline-offset:3px; }
#homeReviews [hidden] { display:none !important; }
@media(max-width:760px) { #homeReviews .tp-wrap { padding:22px 16px; } #homeReviews .tp-summary { gap:18px; } #homeReviews .vp-reviews-summary { border-left:0; padding-left:0; } #homeReviews .tp-grid { flex-direction:column; } #homeReviews .is-ready .tp-grid { flex-direction:row; } #homeReviews .tp-card { padding:24px; } #homeReviews .is-ready .tp-card { padding:24px 36px; } #homeReviews .tp-arrow { width:34px; height:34px; } #homeReviews .tp-prev { left:0; } #homeReviews .tp-next { right:0; } }
@media(prefers-reduced-motion:reduce) { #homeReviews .tp-grid,#homeReviews .tp-card { transition:none; } }
