/* ═══════════════════════════════════════════════════════════════
   POW WASH — HOME PAGE ONLY
   Global theme lives in site.css — this file adds home-specific
   components: hero wrapper, service cards, stats bar, reviews.
   ═══════════════════════════════════════════════════════════════ */

/* ── Hero Wrapper ─────────────────────────────────────────────── */
.pw-hero-wrapper {
  display: grid;
  grid-template-rows: 1fr auto;
  min-height: 100vh;
}
@media (max-width: 575.98px) { .pw-hero-wrapper { min-height: 100svh; } }

/* ── Hero ─────────────────────────────────────────────────────── */
.pw-hero { min-height: 80vh; }

.pw-hero-overlay {
  background: linear-gradient(115deg, rgba(6,6,18,0.78) 0%, rgba(6,6,18,0.52) 55%, rgba(6,6,18,0.10) 100%);
}

.pw-hero-content {
  padding-top: calc(clamp(50px, 10vw, 70px) + 4rem);
  padding-bottom: 5rem;
}

.pw-hero-h1 {
  color: #fff;
  font-size: clamp(1.9rem, 2vw + 1.2rem, 3.5rem);
  font-weight: 800; line-height: 1.12;
  letter-spacing: -0.025em; max-width: 640px;
}

/* ── Hero Pills ───────────────────────────────────────────────── */
.pw-hero-pills { display: flex; flex-wrap: wrap; gap: 0.6rem; }

.pw-pill {
  display: inline-block;
  border: 1.5px solid rgba(255,255,255,0.38);
  color: #f1f5f9; background: rgba(255,255,255,0.07);
  padding: 0.45rem 1.15rem; border-radius: 2rem;
  font-size: 0.875rem; font-weight: 500;
  text-decoration: none !important;
  backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
  transition: background 0.2s, border-color 0.2s, color 0.2s;
}
.pw-pill:hover { background: rgba(124,58,237,0.35); border-color: rgba(167,139,250,0.75); color: #fff !important; }

/* ── Hero CTA ─────────────────────────────────────────────────── */
.pw-cta-btn {
  display: inline-flex; align-items: center;
  background: linear-gradient(135deg, #7c3aed 0%, #ec4899 100%);
  color: #fff !important; font-size: 1rem; font-weight: 700;
  padding: 0.85rem 2rem; border-radius: 0.6rem;
  text-decoration: none !important;
  box-shadow: 0 4px 22px rgba(124,58,237,0.45);
  transition: transform 0.2s, box-shadow 0.2s; letter-spacing: 0.01em;
}
.pw-cta-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 30px rgba(236,72,153,0.5); color: #fff !important; }

/* ── Trust Bar ────────────────────────────────────────────────── */
.pw-trust-bar { background: #0c0e16; border-top: 1px solid rgba(255,255,255,0.06); }
.pw-trust-tagline { color: #94a3b8; font-size: 0.78rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.08em; }

.pw-contact-chip {
  display: inline-flex; align-items: center; gap: 0.35rem;
  background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.09);
  color: #cbd5e1 !important; font-size: 0.8rem;
  padding: 0.35rem 0.85rem; border-radius: 2rem;
  text-decoration: none !important; transition: background 0.2s;
}
.pw-contact-chip:hover { background: rgba(236,72,153,0.18); color: #f9a8d4 !important; }

.pw-trust-logo { height: 48px; width: auto; opacity: 0.82; filter: brightness(0) invert(1); transition: opacity 0.2s; }
.pw-trust-logo:hover { opacity: 1; }

/* ── Section utilities ────────────────────────────────────────── */
.pw-section-label { display: inline-block; color: #f9a8d4; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; }
.pw-section-title { font-size: clamp(1.6rem, 2.5vw + 0.5rem, 2.4rem); font-weight: 800; color: #f1f5f9; letter-spacing: -0.02em; line-height: 1.2; }
.pw-section-sub { font-size: 0.95rem; color: #94a3b8 !important; }

/* ── Services ─────────────────────────────────────────────────── */
.pw-services-section { background: #111318; }

.pw-service-card {
  background: #15181f; border: 1px solid rgba(255,255,255,0.05);
  border-top: 3px solid #7c3aed; border-radius: 1rem; padding: 2rem; height: 100%;
  transition: transform 0.25s, box-shadow 0.25s, border-top-color 0.25s;
}
.pw-service-card:nth-child(even) { border-top-color: #ec4899; }
.pw-service-card:hover { transform: translateY(-5px); box-shadow: 0 16px 40px rgba(0,0,0,0.5); border-top-color: #f9a8d4; }

.pw-service-icon {
  width: 50px; height: 50px;
  background: rgba(124,58,237,0.1); border: 1px solid rgba(124,58,237,0.22);
  border-radius: 0.75rem; display: flex; align-items: center; justify-content: center;
  margin-bottom: 1.25rem; color: #a78bfa; font-size: 1.25rem; transition: background 0.2s;
}
.pw-service-card:nth-child(even) .pw-service-icon { background: rgba(236,72,153,0.08); border-color: rgba(236,72,153,0.22); color: #f9a8d4; }
.pw-service-card:hover .pw-service-icon { background: rgba(124,58,237,0.2); }
.pw-service-card:nth-child(even):hover .pw-service-icon { background: rgba(236,72,153,0.18); }
.pw-service-card h3 { color: #f1f5f9; font-size: 1.2rem; font-weight: 700; margin-bottom: 0.75rem; }
.pw-service-card p { color: #94a3b8; font-size: 0.875rem; line-height: 1.75; margin-bottom: 1.5rem; }

.pw-learn-more { color: #a78bfa; font-size: 0.875rem; font-weight: 600; text-decoration: none !important; display: inline-flex; align-items: center; gap: 0.35rem; transition: gap 0.2s, color 0.2s; }
.pw-service-card:nth-child(even) .pw-learn-more { color: #f9a8d4; }
.pw-learn-more:hover { color: #fff; gap: 0.6rem; }

/* ── Stats Bar ────────────────────────────────────────────────── */
.pw-stats-bar { background: #0c0e16; border-top: 1px solid rgba(255,255,255,0.05); border-bottom: 1px solid rgba(255,255,255,0.05); }
.pw-stat-number { display: block; font-size: clamp(2.1rem, 4vw, 2.9rem); font-weight: 800; color: #a78bfa; line-height: 1; letter-spacing: -0.03em; }
.pw-stat-item:nth-child(even) .pw-stat-number { color: #f9a8d4; }
.pw-stat-label { display: block; font-size: 0.7rem; color: #475569; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; margin-top: 0.4rem; }

/* ── Home reviews scroll ──────────────────────────────────────── */
.pw-reviews-section { background: #111318; }
.pw-reviews-fade-left { left: 0; background: linear-gradient(to right, #111318, transparent); }
.pw-reviews-fade-right { right: 0; background: linear-gradient(to left, #111318, transparent); }
.pw-reviews-fade-left, .pw-reviews-fade-right { position: absolute; top: 0; width: 4rem; height: 100%; pointer-events: none; z-index: 2; }

#pw-scroll-reviews { scrollbar-width: thin; scrollbar-color: rgba(236,72,153,0.35) transparent; }
#pw-scroll-reviews::-webkit-scrollbar { height: 4px; }
#pw-scroll-reviews::-webkit-scrollbar-track { background: transparent; }
#pw-scroll-reviews::-webkit-scrollbar-thumb { background: rgba(236,72,153,0.35); border-radius: 4px; }

.pw-review-card { background: #15181f; border: 1px solid rgba(255,255,255,0.06); border-radius: 0.875rem; padding: 1.5rem; width: 17rem; transition: transform 0.2s, border-color 0.2s; }
.pw-review-card:hover { transform: translateY(-3px); border-color: rgba(236,72,153,0.25); }
.pw-review-stars { font-size: 0.95rem; letter-spacing: 0.04em; margin-bottom: 0.75rem; color: #fbbf24; }
.pw-star-empty { color: #2d3748; }
.pw-review-title { color: #f1f5f9; font-size: 0.95rem; font-weight: 700; margin-bottom: 0.5rem; }
.pw-review-body { color: #94a3b8; font-size: 0.83rem; line-height: 1.65; margin-bottom: 1rem; }
.pw-review-author { font-size: 0.77rem; color: #475569; }
.pw-review-author strong { color: #94a3b8; }
.pw-review-date { color: #334155; font-size: 0.73rem; }
