/* =============================================================
   homepage-bento-v6.css
   New bento sections for the homepage rebuild.
   Scoped to:
     .cf-trust-echo       — trust echo strip (section 2)
     .cf-triggers-bento   — 3-col uniform triggers bento (section 3)
     .cf-personas-ribbon  — 4-col personas ribbon (section 4)
     .cf-build-bento      — irregular 5-card masonry (section 6)
     .cf-trust-bento      — irregular 4-card trust + testimonials (section 7)
     .cf-plans-mini       — 3-col plan cards (section 8)
   Brand rules:
     - Black backgrounds = #000000 only
     - Lime accent = #d1fe17 used sparingly
     - No box-shadows
     - No gradients on dark surfaces
     - 'Clash Grotesk' typography
   Standard section padding: 96px 0 desktop, 72px 0 at 1024, 48px 0 at 640.
   Heading clamp: clamp(28px, 4vw, 44px), weight 700, letter-spacing -0.02em.
   ============================================================= */

/* =============================================================
   SECTION 7 — Trust + Testimonials Bento (.cf-trust-bento)
   Layout: irregular 4-card grid on black.
     Row 1: Meta Provider (col 1-2 wide) + Compliance bullets (col 3)
     Row 2: 3 testimonials spanning all 3 cols
   Mobile: testimonials become horizontal scroll-snap carousel.
   ============================================================= */
.cf-trust-bento {
  background: #ffffff;
  padding: 96px 40px;
}

.cf-trust-bento__container {
  max-width: 1400px;
  margin: 0 auto;
  background: #000000;
  border-radius: 28px;
  padding: 56px 48px;
  border: 1px solid rgba(255, 255, 255, 0.06);
}

.cf-trust-bento__header {
  text-align: left;
  margin-bottom: 36px;
  max-width: 720px;
}

.cf-trust-bento__badge {
  display: inline-block;
  padding: 6px 14px;
  background: rgba(209, 254, 23, 0.12);
  color: #d1fe17;
  border: 1px solid rgba(209, 254, 23, 0.28);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.cf-trust-bento__title {
  font-family: 'Clash Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin: 0 0 14px;
}

.cf-trust-bento__subtitle {
  font-size: 16px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.66);
  margin: 0;
  max-width: 64ch;
}

/* Row 1: Meta Provider (wide) + Compliance */
.cf-trust-bento__row-1 {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  gap: 18px;
  margin-bottom: 18px;
}

/* Card base */
.cf-trust-bento__card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.015));
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 20px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  transition: border-color 0.25s ease, transform 0.25s ease;
}

.cf-trust-bento__card:hover {
  border-color: #d1fe17;
  transform: translateY(-2px);
}

/* Meta Provider card (wide) */
.cf-trust-bento__meta {
  flex-direction: row;
  align-items: center;
  gap: 28px;
}

.cf-trust-bento__meta-badge {
  flex-shrink: 0;
  width: 140px;
  height: 140px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.cf-trust-bento__meta-badge img {
  width: 100%;
  height: auto;
  display: block;
}

.cf-trust-bento__meta-text {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.cf-trust-bento__meta-title {
  font-family: 'Clash Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 22px;
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.02em;
  line-height: 1.2;
  margin: 0;
}

.cf-trust-bento__meta-desc {
  font-size: 15px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.66);
  margin: 0;
}

/* Compliance card */
.cf-trust-bento__compliance-title {
  font-family: 'Clash Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 18px;
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.01em;
  margin: 0 0 4px;
}

.cf-trust-bento__compliance-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.cf-trust-bento__compliance-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.78);
}

.cf-trust-bento__compliance-check {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: rgba(209, 254, 23, 0.15);
  color: #d1fe17;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  margin-top: 2px;
}

/* Row 2: testimonials grid */
.cf-trust-bento__row-2 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-bottom: 24px;
}

.cf-trust-bento__review {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.015));
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 20px;
  padding: 26px 26px 24px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  transition: border-color 0.25s ease, transform 0.25s ease;
}

.cf-trust-bento__review:hover {
  border-color: rgba(209, 254, 23, 0.6);
  transform: translateY(-2px);
}

.cf-trust-bento__review--featured {
  background: linear-gradient(180deg, rgba(209, 254, 23, 0.06), rgba(209, 254, 23, 0.02));
  border-color: rgba(209, 254, 23, 0.25);
}

.cf-trust-bento__review-stars {
  display: flex;
  gap: 2px;
}

.cf-trust-bento__review-stars svg {
  width: 14px;
  height: 14px;
}

.cf-trust-bento__review-title {
  font-family: 'Clash Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 17px;
  font-weight: 600;
  color: #ffffff;
  letter-spacing: -0.01em;
  margin: 0;
  line-height: 1.25;
}

.cf-trust-bento__review-quote {
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
  flex: 1;
}

.cf-trust-bento__review-author {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 4px;
}

.cf-trust-bento__review-initial {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 700;
}

.cf-trust-bento__review--featured .cf-trust-bento__review-initial {
  background: rgba(209, 254, 23, 0.18);
  border-color: rgba(209, 254, 23, 0.35);
  color: #d1fe17;
}

.cf-trust-bento__review-name {
  font-size: 13.5px;
  font-weight: 600;
  color: #ffffff;
  line-height: 1.2;
}

.cf-trust-bento__review-country {
  display: block;
  font-size: 11px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.5);
  letter-spacing: 0.04em;
  margin-top: 2px;
}

/* Footer: rating + CTA */
.cf-trust-bento__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  padding-top: 4px;
}

.cf-trust-bento__rating {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: rgba(255, 255, 255, 0.7);
}

.cf-trust-bento__rating-stars {
  display: inline-flex;
  gap: 2px;
}

.cf-trust-bento__rating-stars svg {
  width: 14px;
  height: 14px;
}

.cf-trust-bento__rating-text strong {
  color: #ffffff;
  font-weight: 700;
}

.cf-trust-bento__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #d1fe17;
  color: #000000;
  text-decoration: none;
  border-radius: 999px;
  padding: 12px 22px;
  font-size: 14px;
  font-weight: 700;
  border: 1px solid #d1fe17;
  transition: background 0.2s ease, transform 0.2s ease;
}

.cf-trust-bento__cta:hover {
  background: #ffffff;
  border-color: #ffffff;
  transform: translateY(-1px);
}

/* Tablet */
@media (max-width: 1023px) {
  .cf-trust-bento {
    padding: 72px 28px;
  }
  .cf-trust-bento__container {
    padding: 44px 32px;
    border-radius: 24px;
  }
  .cf-trust-bento__row-1 {
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-bottom: 14px;
  }
  .cf-trust-bento__meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
  }
  .cf-trust-bento__meta-badge {
    width: 110px;
    height: 110px;
    padding: 14px;
  }
  .cf-trust-bento__row-2 {
    gap: 14px;
  }
}

@media (max-width: 768px) {
  .cf-trust-bento__row-1 {
    grid-template-columns: 1fr;
  }
  .cf-trust-bento__row-2 {
    grid-template-columns: 1fr;
  }
}

/* Mobile: testimonials horizontal scroll-snap carousel */
@media (max-width: 640px) {
  .cf-trust-bento {
    padding: 48px 16px;
  }
  .cf-trust-bento__container {
    padding: 36px 20px;
    border-radius: 20px;
  }
  .cf-trust-bento__card {
    padding: 24px 22px;
  }
  .cf-trust-bento__meta-title {
    font-size: 19px;
  }
  .cf-trust-bento__row-2 {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: 88%;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding: 16px;
    gap: 12px;
    margin-left: -20px;
    margin-right: -20px;
    padding: 0 20px 8px;
    -webkit-overflow-scrolling: touch;
  }
  .cf-trust-bento__row-2::-webkit-scrollbar {
    display: none;
  }
  .cf-trust-bento__review {
    scroll-snap-align: start;
    padding: 22px;
  }
  .cf-trust-bento__footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }
  .cf-trust-bento__cta {
    width: 100%;
    justify-content: center;
  }
}

/* =============================================================
   SECTION 8 — Plans Mini (.cf-plans-mini)
   Layout: 3-col uniform plan cards on white. Middle (Pro) has lime
   border + "Most popular" chip. No shadow, no gradient.
   ============================================================= */
.cf-plans-mini {
  background: #ffffff;
  padding: 96px 40px;
}

.cf-plans-mini__container {
  max-width: 1280px;
  margin: 0 auto;
}

.cf-plans-mini__header {
  text-align: center;
  margin-bottom: 48px;
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

.cf-plans-mini__badge {
  display: inline-block;
  padding: 6px 14px;
  background: rgba(0, 0, 0, 0.04);
  color: #000000;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 18px;
}

.cf-plans-mini__title {
  font-family: 'Clash Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 600;
  color: #000000;
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin: 0 0 14px;
}

.cf-plans-mini__subtitle {
  font-size: 16px;
  line-height: 1.6;
  color: #6b7280;
  margin: 0;
}

.cf-plans-mini__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  align-items: stretch;
}

.cf-plans-mini__plan {
  position: relative;
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 24px;
  padding: 36px 30px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  transition: border-color 0.25s ease, transform 0.25s ease;
}

.cf-plans-mini__plan:hover {
  border-color: #000000;
  transform: translateY(-2px);
}

.cf-plans-mini__plan--featured {
  border-color: #d1fe17;
  border-width: 2px;
  padding: 35px 29px;
  background: linear-gradient(180deg, rgba(209, 254, 23, 0.04), #ffffff 70%);
}

.cf-plans-mini__plan--featured:hover {
  border-color: #d1fe17;
  transform: translateY(-3px);
}

.cf-plans-mini__featured-chip {
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  background: #d1fe17;
  color: #000000;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 999px;
  white-space: nowrap;
}

.cf-plans-mini__plan-header {
  display: flex;
  flex-direction: column;
  gap: 8px;
  border-bottom: 1px solid #f3f4f6;
  padding-bottom: 20px;
}

.cf-plans-mini__plan-name {
  font-family: 'Clash Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 18px;
  font-weight: 700;
  color: #000000;
  letter-spacing: -0.01em;
  margin: 0;
}

.cf-plans-mini__plan-price-row {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.cf-plans-mini__plan-price {
  font-family: 'Clash Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 44px;
  font-weight: 700;
  color: #000000;
  letter-spacing: -0.04em;
  line-height: 1;
}

.cf-plans-mini__plan-period {
  font-size: 14px;
  font-weight: 500;
  color: #6b7280;
}

.cf-plans-mini__plan-meta {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 4px;
}

.cf-plans-mini__plan-dms {
  font-size: 14px;
  font-weight: 600;
  color: #000000;
}

.cf-plans-mini__plan-workspaces {
  font-size: 13px;
  color: #6b7280;
}

.cf-plans-mini__plan-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1;
}

.cf-plans-mini__plan-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  line-height: 1.55;
  color: #374151;
}

.cf-plans-mini__plan-check {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.05);
  color: #000000;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  margin-top: 2px;
}

.cf-plans-mini__plan--featured .cf-plans-mini__plan-check {
  background: rgba(209, 254, 23, 0.25);
  color: #000000;
}

.cf-plans-mini__plan-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: none;
  border-radius: 14px;
  padding: 14px 20px;
  font-size: 15px;
  font-weight: 600;
  border: 1.5px solid #000000;
  background: transparent;
  color: #000000;
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
  width: 100%;
}

.cf-plans-mini__plan-cta:hover {
  background: #000000;
  color: #ffffff;
  transform: translateY(-1px);
}

.cf-plans-mini__plan--featured .cf-plans-mini__plan-cta {
  background: #d1fe17;
  border-color: #d1fe17;
  color: #000000;
}

.cf-plans-mini__plan--featured .cf-plans-mini__plan-cta:hover {
  background: #000000;
  border-color: #000000;
  color: #ffffff;
}

.cf-plans-mini__plan-microcopy {
  text-align: center;
  font-size: 12px;
  color: #6b7280;
  margin: 0;
}

.cf-plans-mini__footer {
  margin-top: 36px;
  text-align: center;
}

.cf-plans-mini__footer-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #000000;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  padding-bottom: 2px;
  transition: border-color 0.2s ease, color 0.2s ease;
}

.cf-plans-mini__footer-link:hover {
  border-color: #000000;
  color: #000000;
}

@media (max-width: 1023px) {
  .cf-plans-mini {
    padding: 72px 28px;
  }
  .cf-plans-mini__plan {
    padding: 30px 26px;
  }
  .cf-plans-mini__plan--featured {
    padding: 29px 25px;
  }
}

@media (max-width: 768px) {
  .cf-plans-mini__grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .cf-plans-mini__plan-price {
    font-size: 38px;
  }
}

@media (max-width: 640px) {
  .cf-plans-mini {
    padding: 48px 16px;
  }
}

