
/* ============================================================
   ACCENT (ORANGE) SYSTEM
   ============================================================ */
:root {
  --accent: #ff6b00;
  --accent-hover: #e05e00;
}

/* ============================================================
   BOOK A MEETING — GLOBAL CTA BUTTON
   Solid orange · White text
   Hover: Transparent · Orange border · Orange text
   ============================================================ */
.btn-cta,
.btn-cta.btn-primary,
.btn-cta.btn-outline {
  background: var(--accent) !important;
  color: #ffffff !important;
  border: 1px solid var(--accent) !important;
  box-shadow: none !important;
  font-weight: 600;
}
.btn-cta:hover,
.btn-cta:focus,
.btn-cta.btn-primary:hover,
.btn-cta.btn-outline:hover {
  background: transparent !important;
  color: var(--accent) !important;
  border: 1px solid var(--accent) !important;
  transform: translateY(-2px);
  box-shadow: none !important;
}

/* ============================================================
   SECTION LABELS — GLOBAL ORANGE
   Applies to .section-label and .hero-eyebrow text
   ============================================================ */
.section-label {
  color: var(--accent) !important;
  letter-spacing: 0.08em;
}

/* Hero eyebrow pill keeps its pill background but text goes orange */
.hero-eyebrow {
  color: var(--accent) !important;
}

/* ============================================================
   ALL CAPS HEADINGS (SITE-WIDE)
   ============================================================ */
h1, h2, h3, h4 { text-transform: uppercase; letter-spacing: 0.04em; }
.pkg-name, .pkg-billing, .card-title, .faq-question,
.process-title, .step-title, .feature-title, .stat-label,
.footer-heading { text-transform: uppercase; letter-spacing: 0.04em; }

p, li, label, input, select, textarea,
.review-text, .review-name, .pkg-desc, .pkg-price-note,
.pkg-guarantee, .hero-sub, .section-subtitle, .card-body,
.faq-answer, .footer-copy, .proof-label, .breadcrumb {
  text-transform: none !important;
  letter-spacing: normal !important;
}

/* ============================================================
   REVIEWS SLIDER
   ============================================================ */
.reviews-section { padding: 96px 0; }
.reviews-slider-wrap {
  position: relative;
  overflow: hidden;
  margin: 48px 0 32px;
  padding: 0 40px;
}
.reviews-track {
  display: flex;
  gap: 24px;
  transition: transform 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: transform;
}
.review-slide {
  flex: 0 0 calc(33.333% - 16px);
  min-width: calc(33.333% - 16px);
}
@media (max-width: 900px) {
  .review-slide { flex: 0 0 calc(50% - 12px); min-width: calc(50% - 12px); }
}
@media (max-width: 600px) {
  .review-slide { flex: 0 0 100%; min-width: 100%; }
}
.review-slide .review-card {
  background: #fff;
  border-radius: 16px;
  padding: 32px 28px;
  box-shadow: 0 2px 8px rgba(16,24,40,0.07), 0 0 0 1px rgba(16,24,40,0.04);
  display: flex;
  flex-direction: column;
  gap: 16px;
  height: 100%;
  transition: box-shadow 0.22s ease, transform 0.22s ease;
}
.review-slide .review-card:hover {
  box-shadow: 0 16px 48px rgba(16,24,40,0.12);
  transform: translateY(-2px);
}
.review-slide .review-stars {
  color: #F5A623;
  font-size: 20px;
  letter-spacing: 2px;
  line-height: 1;
}
.review-slide .review-text {
  font-size: 15px;
  color: #5B667A;
  line-height: 1.7;
  flex: 1;
}
.review-slide .review-author {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 8px;
}
.review-slide .review-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--brand);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 700;
  flex-shrink: 0;
  text-transform: uppercase;
}
.review-slide .review-name {
  font-size: 14px;
  font-weight: 600;
  color: #0B1220;
}
.reviews-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #fff;
  border: none;
  box-shadow: 0 2px 12px rgba(16,24,40,0.12);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--brand);
  z-index: 10;
  transition: box-shadow 0.18s, background 0.18s, color 0.18s;
}
.reviews-arrow:hover { background: var(--brand); color: #fff; box-shadow: 0 4px 20px rgba(81,182,231,0.30); }
.reviews-arrow--prev { left: 0; }
.reviews-arrow--next { right: 0; }
.reviews-dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 8px;
}
.reviews-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(81,182,231,0.25);
  border: none;
  cursor: pointer;
  transition: background 0.2s, transform 0.2s;
  padding: 0;
}
.reviews-dot.active { background: var(--brand); transform: scale(1.3); }
.reviews-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(81,182,231,0.10);
  border-radius: 999px;
  padding: 10px 20px;
  font-size: 14px;
  color: var(--brand);
  font-weight: 500;
  margin-top: 32px;
}
