/* ============================================================
   Reviews — brand palette override.
   Remaps the widget's green/gold scheme onto the site's schema:
   cyan accent (#29C5F6) + theme-aware surfaces/text driven by the
   site's CSS variables, so the section follows the dark/light toggle.
   Scoped with #reviews (id+class) to beat the vendor .rv-* rules.
   ============================================================ */
#reviews{
  --rv-accent:#29C5F6;
  --rv-accent-2:#7FD8F8;
  --rv-accent-rgb:41,197,246;
  --rv-text-rgb:245,245,240;   /* dark theme text base */
  --rv-line-rgb:255,255,255;
  /* dedicated surface for this section — a gentle step lighter than the page
     --bg (#0A0E1A) so dark mode has tonal "degrees" that separate the reviews
     from the reach/map section and are easier on the eyes. */
  --rv-surface:#111726;
}
[data-theme="light"] #reviews{
  --rv-text-rgb:26,26,26;      /* light theme text base */
  --rv-line-rgb:26,26,26;
  /* cool off-white, clearly separated from the warm cream reach/map section */
  --rv-surface:#F4F5F7;
}

#reviews.rv-section{ background:var(--rv-surface); color:var(--text); }

/* ── Header ── */
#reviews .rv-eyebrow{ color:var(--rv-accent); background:rgba(var(--rv-accent-rgb),.10); border-color:rgba(var(--rv-accent-rgb),.28); }
#reviews .rv-title{ color:var(--text); }
#reviews .rv-title .rv-gold,#reviews .rv-gold{
  background:linear-gradient(135deg,var(--rv-accent),var(--rv-accent-2));
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent;
}
#reviews .rv-subtitle{ color:rgba(var(--rv-text-rgb),.72); }

/* ── Stats ── */
#reviews .rv-stat-value,#reviews .rv-stat-val{ color:var(--rv-accent); text-shadow:0 0 40px rgba(var(--rv-accent-rgb),.30); }
#reviews .rv-stat-label,#reviews .rv-stat-lbl{ color:rgba(var(--rv-text-rgb),.62); }
@media (hover:hover){ #reviews .rv-stat:hover{ border-color:rgba(var(--rv-accent-rgb),.18); background:rgba(var(--rv-accent-rgb),.05); } }

/* ── Marquee edge fades ── */
#reviews .rv-marquee-area::before,#reviews .rv-fade-left{ background:linear-gradient(90deg,var(--rv-surface) 0%,transparent 100%); }
#reviews .rv-marquee-area::after,#reviews .rv-fade-right{ background:linear-gradient(270deg,var(--rv-surface) 0%,transparent 100%); }

/* ── Hidden honeypot (anti-spam) — keep in DOM, off-screen ── */
.honeypot-field,#rvSpamHoney{ position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; padding:0 !important; margin:0 !important; overflow:hidden !important; opacity:0 !important; pointer-events:none !important; border:0 !important; }

/* ── Cards ── */
#reviews .rv-card{ background:var(--panel); border-color:var(--hair2); box-shadow:0 6px 22px -8px rgba(0,0,0,.38); }
@media (hover:hover){ #reviews .rv-card:hover{ border-color:rgba(var(--rv-accent-rgb),.35); background:var(--panel); box-shadow:0 24px 48px -16px rgba(0,0,0,.4),0 8px 24px -8px rgba(var(--rv-accent-rgb),.12); } }
#reviews .rv-card-accent{ background:linear-gradient(90deg,var(--rv-accent),var(--rv-accent-2)); }
#reviews .rv-card-quote svg{ color:var(--rv-accent); }
#reviews .rv-card-text{ color:rgba(var(--rv-text-rgb),.88); }
#reviews .rv-badge{ color:var(--rv-accent); background:rgba(var(--rv-accent-rgb),.14); border-color:rgba(var(--rv-accent-rgb),.35); }
#reviews .rv-star{ color:var(--rv-accent); }
#reviews .rv-star-empty{ color:rgba(var(--rv-accent-rgb),.22); }
#reviews .rv-author{ border-top-color:var(--hair2); }
#reviews .rv-author-name{ color:var(--text); }
#reviews .rv-author-role{ color:rgba(var(--rv-text-rgb),.62); }
#reviews .rv-avatar{ background:linear-gradient(135deg,var(--rv-accent),var(--rv-accent-2)) !important; color:var(--on-accent) !important; box-shadow:0 4px 12px -4px rgba(var(--rv-accent-rgb),.45); }

/* ── Empty / placeholder cards ── */
#reviews .rv-card-empty{ border-color:rgba(var(--rv-accent-rgb),.30) !important; background:rgba(var(--rv-line-rgb),.02) !important; }
#reviews .rv-card-empty .rv-card-text{ color:rgba(var(--rv-text-rgb),.6); }
#reviews .rv-card-empty .rv-author-name{ color:var(--text); }
#reviews .rv-card-empty .rv-author-role{ color:rgba(var(--rv-text-rgb),.5); }
#reviews .rv-avatar-empty{ border-color:rgba(var(--rv-accent-rgb),.45) !important; color:var(--rv-accent) !important; background:rgba(var(--rv-accent-rgb),.06) !important; }
#reviews .rv-star-dashed svg{ stroke:var(--rv-accent); }

/* ── CTA ── */
#reviews .rv-cta-text{ color:rgba(var(--rv-text-rgb),.6); }
#reviews .rv-cta-primary,#reviews .rv-btn-primary{ background:linear-gradient(135deg,var(--rv-accent),var(--rv-accent-2)); color:var(--on-accent); box-shadow:0 8px 24px -8px rgba(var(--rv-accent-rgb),.5); }
#reviews .rv-cta-primary:hover,#reviews .rv-btn-primary:hover{ box-shadow:0 14px 30px -8px rgba(var(--rv-accent-rgb),.7),0 0 40px -8px rgba(var(--rv-accent-rgb),.25); }
#reviews .rv-cta-secondary,#reviews .rv-btn-outline{ background:rgba(var(--rv-accent-rgb),.06); color:var(--rv-accent); border-color:rgba(var(--rv-accent-rgb),.3); }
#reviews .rv-cta-secondary:hover,#reviews .rv-btn-outline:hover{ background:rgba(var(--rv-accent-rgb),.12); border-color:var(--rv-accent); color:var(--rv-accent); }

/* ── Zoom (expanded testimonial) overlay ── */
.rv-zoom-card{ background:var(--panel) !important; border-color:var(--hair) !important; }
.rv-zoom-card::before{ background:linear-gradient(90deg,var(--rv-accent),var(--rv-accent-2)) !important; }
.rv-zoom-industry{ color:var(--rv-accent) !important; background:rgba(var(--rv-accent-rgb),.10) !important; border-color:rgba(var(--rv-accent-rgb),.28) !important; }
.rv-zoom-quote{ color:var(--rv-accent) !important; }
.rv-zoom-body p,.rv-zoom-text{ color:var(--text) !important; }
.rv-zoom-author{ border-top-color:var(--hair) !important; }
.rv-zoom-author .rv-author-name{ color:var(--text) !important; }
.rv-zoom-close{ background:var(--accent) !important; color:var(--on-accent) !important; }
.rv-zoom-close:hover{ background:var(--rv-accent-2) !important; color:var(--on-accent) !important; }

/* ── Submission form modal ── */
.rv-form-modal{ background:var(--panel) !important; color:var(--text); }
.rv-form-modal .rv-form-title,.rv-form-modal .rv-success-title{ color:var(--text) !important; }
.rv-form-modal .rv-form-sub,.rv-form-modal .rv-success-text,.rv-form-modal .rv-loading-text{ color:rgba(var(--rv-text-rgb),.6) !important; }
.rv-form-modal .rv-label{ color:rgba(var(--rv-text-rgb),.72) !important; }
.rv-form-modal .rv-input,.rv-form-modal .rv-select,.rv-form-modal .rv-textarea{ background-color:rgba(var(--rv-line-rgb),.05) !important; border:1.5px solid rgba(var(--rv-line-rgb),.22) !important; color:var(--text) !important; }
.rv-form-modal .rv-input::placeholder,.rv-form-modal .rv-textarea::placeholder{ color:rgba(var(--rv-text-rgb),.4) !important; }
.rv-form-modal .rv-input:focus,.rv-form-modal .rv-select:focus,.rv-form-modal .rv-textarea:focus{ border-color:var(--rv-accent) !important; box-shadow:0 0 0 4px rgba(var(--rv-accent-rgb),.15) !important; }
.rv-form-modal .rv-select option{ background:var(--panel); color:var(--text); }
.rv-form-modal .rv-char-count{ color:rgba(var(--rv-text-rgb),.4) !important; }
.rv-form-modal .rv-star-picker-btn{ color:rgba(var(--rv-accent-rgb),.25) !important; }
.rv-form-modal .rv-star-picker-btn.rv-picked{ color:var(--rv-accent) !important; filter:drop-shadow(0 0 6px rgba(var(--rv-accent-rgb),.5)) !important; }
.rv-form-close{ background:rgba(var(--rv-accent-rgb),.08) !important; color:var(--text) !important; }
.rv-form-close:hover{ background:rgba(var(--rv-accent-rgb),.16) !important; }
.rv-form-preview{ background:rgba(var(--rv-accent-rgb),.03) !important; border-color:rgba(var(--rv-accent-rgb),.15) !important; }
.rv-form-preview-label{ color:var(--rv-accent) !important; }
.rv-btn,.rv-submit-btn{ /* base */ }
.rv-btn-primary,.rv-submit-btn{ background:linear-gradient(135deg,var(--rv-accent),var(--rv-accent-2)) !important; color:var(--on-accent) !important; box-shadow:0 8px 24px -8px rgba(var(--rv-accent-rgb),.5) !important; }
.rv-btn-primary:hover,.rv-submit-btn:hover{ background:linear-gradient(135deg,var(--rv-accent-2),var(--rv-accent)) !important; }
.rv-btn-cancel,.rv-btn-outline{ color:rgba(var(--rv-text-rgb),.65) !important; border-color:var(--hair2) !important; background:transparent !important; }
.rv-btn-cancel:hover,.rv-btn-outline:hover{ background:rgba(var(--rv-accent-rgb),.06) !important; border-color:var(--rv-accent) !important; color:var(--rv-accent) !important; }
.rv-preview-card-inner{ background:var(--panel) !important; border-color:var(--hair) !important; }
.rv-preview-card-inner .rv-card-text{ color:rgba(var(--rv-text-rgb),.82) !important; }
.rv-preview-card-inner .rv-author-name{ color:var(--text) !important; }
.rv-preview-card-inner .rv-author-role{ color:rgba(var(--rv-text-rgb),.5) !important; }

/* ── Misc green remnants → cyan ── */
.rv-form-modal .rv-pulse-dot,#reviews .rv-pulse-dot{ background-color:var(--rv-accent) !important; }

/* ── Toasts ── */
.rv-toast-success{ background:var(--panel) !important; color:var(--rv-accent) !important; border:1px solid rgba(var(--rv-accent-rgb),.35) !important; }

/* ── Recolor SVGs with hardcoded fills (stars = gold, quotes = green) to cyan ── */
#reviews svg[fill="#F0B429"],.rv-zoom-card svg[fill="#F0B429"],.rv-form-overlay svg[fill="#F0B429"]{ fill:#29C5F6 !important; }
#reviews svg[fill="#0E4429"],.rv-zoom-card svg[fill="#0E4429"],.rv-form-overlay svg[fill="#0E4429"]{ fill:#29C5F6 !important; }
#reviews svg[stroke="#D4A843"],.rv-zoom-card svg[stroke="#D4A843"],.rv-form-overlay svg[stroke="#D4A843"]{ stroke:rgba(41,197,246,.45) !important; }
#reviews svg[stroke="#555"]{ stroke:rgba(41,197,246,.4) !important; }
