/* ═══════════════════════════════════════════════════════════
   Shared Components — Always Green Turf
   Include this file on every page for Trusted & Certified
   and Customer Reviews sections.
   ═══════════════════════════════════════════════════════════ */

/* ── Trusted & Certified ── */
#certified { padding:0; overflow:hidden; position:relative; background:#e8f5e8; }
.cert-wrap { max-width:1000px; margin:0 auto; padding:56px 40px; text-align:center; position:relative; }
.cert-label { font-size:clamp(1.9rem,3.6vw,2.9rem); font-weight:800; letter-spacing:-.025em; line-height:1.12; color:#1a4a1a; margin-bottom:14px; }
.cert-sub { font-size:.95rem; color:#3a6a3a; line-height:1.6; max-width:560px; margin:0 auto 36px; }
.cert-logos { display:flex; align-items:center; justify-content:center; gap:60px; flex-wrap:wrap; }
.cert-logo-item { display:flex; align-items:center; justify-content:center; opacity:.9; transition:opacity .25s; }
.cert-logo-item:hover { opacity:1; }
.cert-logo-img { height:100px; width:auto; object-fit:contain; }
.cert-logo-bbb { height:140px; }

/* ── Customer Reviews ── */
.rev-hd { text-align:center; margin-bottom:56px; }
.rev-hd .sec-p { max-width:480px; margin:0 auto; }
.rp-strip { display:flex; justify-content:center; gap:14px; margin-bottom:48px; flex-wrap:wrap; }
.rp-pill { display:flex; align-items:center; gap:9px; padding:9px 22px; border-radius:50px; background:var(--off); border:1px solid var(--border); transition:transform var(--t), box-shadow var(--t); }
.rp-pill:hover { transform:translateY(-3px); box-shadow:0 8px 28px rgba(0,0,0,.09); }
.rp-name { font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); }
.rp-stars { position:relative; display:inline-block; font-size:.8rem; line-height:1; }
.rp-stars .s-empty { color:#d1d5db; letter-spacing:1px; }
.rp-stars .s-full  { position:absolute; left:0; top:0; overflow:hidden; width:var(--pct); white-space:nowrap; color:#f59e0b; letter-spacing:1px; }
.rp-score { font-size:.9rem; font-weight:800; color:var(--text); }
.slider-wrap { overflow:hidden; border-radius:20px; }
.slider-track { display:flex; gap:18px; transition:transform .65s var(--ease); }
.r-card { width:0; background:var(--off); border:1px solid var(--border); border-radius:20px; padding:34px 30px; flex-shrink:0; position:relative; overflow:hidden; transition:transform var(--t), box-shadow var(--t), border-color var(--t); }
.r-card::before { content:'"'; position:absolute; top:10px; right:22px; font-size:6rem; line-height:1; color:rgba(30,138,30,.07); font-family:Georgia,serif; pointer-events:none; }
.r-card:hover { transform:translateY(-7px); box-shadow:0 20px 56px rgba(0,0,0,.09); border-color:rgba(30,138,30,.18); }
.r-stars { display:flex; gap:3px; margin-bottom:14px; color:#f59e0b; }
.r-text { font-size:.84rem; color:#3a563a; line-height:1.8; margin-bottom:22px; font-style:italic; }
.r-author { display:flex; align-items:center; gap:12px; }
.r-av { width:44px; height:44px; border-radius:50%; flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:.8rem; font-weight:800; color:#fff; }
.r-name { font-size:.84rem; font-weight:700; color:var(--text); }
.r-meta { font-size:.68rem; color:var(--muted); margin-top:2px; }
.sl-ctrl { display:flex; align-items:center; justify-content:center; gap:12px; margin-top:34px; }
.sl-arr { width:44px; height:44px; border-radius:50%; border:1.5px solid rgba(30,138,30,.28); background:transparent; color:var(--g4); cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all var(--t); }
.sl-arr:hover { background:var(--g4); border-color:var(--g4); color:#fff; transform:scale(1.1); }
.sl-dots { display:flex; gap:7px; }
.sl-dot { width:7px; height:7px; border-radius:4px; background:#d1d5db; border:none; cursor:pointer; transition:all var(--t); }
.sl-dot.on { width:26px; background:var(--g5); }
