/* ── benefits.css — Benefits / Por qué Zona X section ── */

/* Left sidebar */
.benefits__sidebar {
  background: var(--black);
  border-right: var(--border-thin);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.benefits__heading {
  font-size: clamp(2rem, 4vw, 4rem);
  margin-bottom: var(--space-md);
}

.benefits__desc {
  color: #888;
  font-size: 1rem;
  line-height: 1.7;
}

/* Right panel */
.benefits__panel {
  background: var(--black);
}

/* 3x2 feature grid */
.benefits__feature-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
}

/* Individual benefit card (grid cell) */
.benefits__card {
  padding: var(--space-md);
  display: flex;
  flex-direction: column;
}

.benefits__card--border-r-b {
  border-right: var(--border-thin);
  border-bottom: var(--border-thin);
}

.benefits__card--border-b {
  border-bottom: var(--border-thin);
}

.benefits__card--border-r {
  border-right: var(--border-thin);
}

/* Card highlight (the neon CTA cell) */
.benefits__card--neon {
  background: var(--neon);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Card index label */
.benefits__index {
  margin-bottom: var(--space-sm);
}

/* Card heading */
.benefits__card-title {
  font-size: 1.3rem;
  font-weight: 700;
  margin-bottom: var(--space-sm);
  letter-spacing: -0.01em;
}

/* Card body copy */
.benefits__card-body {
  font-size: 1rem;
  line-height: 1.5;
  opacity: 0.8;
  flex: 1;
  margin-bottom: var(--space-md);
}

/* Card footer stat */
.benefits__card-stat {
  color: #888;
  margin-top: auto;
  padding-top: var(--space-sm);
  border-top: var(--border-thin);
}

/* Big number in neon cell */
.benefits__count {
  font-size: 2.5rem;
  font-weight: 900;
  margin-bottom: var(--space-sm);
}

/* CTA link inside neon cell */
.benefits__cta-link {
  display: inline-block;
  margin-top: var(--space-md);
  border: 1px solid var(--black);
  padding: 0.5rem 1rem;
  text-decoration: none;
  color: var(--black);
  font-family: var(--font-mono);
  font-size: 0.8rem;
  letter-spacing: 0.05em;
  transition:
    background-color 0.2s,
    color 0.2s,
    border-color 0.2s;
}

.benefits__cta-link:hover {
  background: #000;
  color: var(--neon);
  border-color: #000;
}

/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
  .benefits-section .grid-layout {
    grid-template-columns: 1fr !important;
  }
  .benefits-section .grid-layout > .border-r {
    border-right: none !important;
    border-bottom: var(--border-thin);
  }
  .benefits-section .reveal-stagger {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  /* In 2-col layout, cards 3 & 4 form the middle row — both need border-bottom */
  .benefits-section .reveal-stagger > div:nth-child(3),
  .benefits-section .reveal-stagger > div:nth-child(4) {
    border-bottom: var(--border-thin) !important;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  /* Left-column cells get border-right, right-column cells don't */
  .benefits-section .reveal-stagger > div:nth-child(odd) {
    border-right: var(--border-thin) !important;
  }
  .benefits-section .reveal-stagger > div:nth-child(even) {
    border-right: none !important;
  }
}

@media (max-width: 768px) {
  .benefits-section .reveal-stagger {
    grid-template-columns: 1fr !important;
  }
  .benefits-section .reveal-stagger > div {
    border-right: none !important;
  }
}
