/* Secciones adicionales — sectores, indicadores, FAQ extra */
.extra-section .section__lead {
  text-align: center;
  max-width: 620px;
  margin: 0 auto 2rem;
}

.sectors-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}

.sector-card {
  padding: 1.15rem 1rem;
  border-radius: var(--radius, 10px);
  background: var(--bg-card, var(--white, #fff));
  border: 1px solid var(--border, rgba(0, 0, 0, 0.08));
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
}

.sector-card__icon {
  width: 40px;
  height: 40px;
  max-width: 40px;
  max-height: 40px;
  margin-bottom: 0.65rem;
  color: var(--teal, var(--cyan, var(--gold, var(--orange, #006978))));
}

.sector-card__icon svg {
  width: 40px !important;
  height: 40px !important;
  display: block;
}

.sector-card h3 {
  font-size: 0.92rem;
  margin-bottom: 0.35rem;
  color: var(--navy, var(--text, #1e293b));
  text-wrap: balance;
}

.sector-card p {
  font-size: 0.82rem;
  line-height: 1.45;
  color: var(--text-muted, var(--gray-500, #64748b));
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.stat-card {
  text-align: center;
  padding: 1.25rem 0.75rem;
  border-radius: var(--radius, 10px);
  background: var(--bg-card, var(--white, #fff));
  border: 1px solid var(--border, rgba(0, 0, 0, 0.08));
}

.stat-card__num {
  display: block;
  font-size: 1.45rem;
  font-weight: 700;
  color: var(--teal, var(--cyan, var(--gold, var(--orange, #006978))));
  margin-bottom: 0.25rem;
}

.stat-card__label {
  font-size: 0.78rem;
  line-height: 1.35;
  color: var(--text-muted, var(--gray-500, #64748b));
}

.benefits-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}

.benefit-card {
  padding: 1.25rem;
  border-radius: var(--radius, 10px);
  background: var(--bg-card, var(--white, #fff));
  border: 1px solid var(--border, rgba(0, 0, 0, 0.08));
}

.benefit-card h3 {
  font-size: 0.95rem;
  margin-bottom: 0.45rem;
  color: var(--navy, var(--text, #1e293b));
}

.benefit-card p {
  font-size: 0.85rem;
  line-height: 1.5;
  color: var(--text-muted, var(--gray-500, #64748b));
}

.extra-faq .faq-list {
  max-width: 760px;
  margin: 0 auto;
}

.extra-faq .faq-item {
  border: 1px solid var(--border, rgba(0, 0, 0, 0.1));
  border-radius: var(--radius, 8px);
  margin-bottom: 0.65rem;
  background: var(--bg-card, var(--white, #fff));
  overflow: hidden;
}

.extra-faq .faq-item summary {
  padding: 0.9rem 1rem;
  font-weight: 600;
  cursor: pointer;
  color: var(--navy, var(--text, #1e293b));
}

.extra-faq .faq-item p {
  padding: 0 1rem 1rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: var(--text-muted, var(--gray-500, #64748b));
}

/* Más límites de imágenes / decorativos */
.dashboard__chart {
  height: 64px !important;
  max-height: 64px;
  padding: 0.35rem 0 !important;
}

.dashboard__bar {
  max-height: 100%;
}

.hex-grid {
  max-width: 520px;
  margin-inline: auto;
}

.hex-card {
  max-width: 100%;
}

.feature-icon {
  width: 48px !important;
  height: 48px !important;
  max-width: 48px;
  max-height: 48px;
  flex-shrink: 0;
}

.icon-row__grid svg,
.icon-row__item svg {
  width: 36px !important;
  height: 36px !important;
  max-width: 36px;
  max-height: 36px;
}

.img-placeholder,
.zigzag__visual .img-placeholder {
  max-height: 200px;
  aspect-ratio: 4 / 3;
}

.tabs__visual,
.tabs__panel-visual {
  max-width: 320px;
  margin-inline: auto;
}

@media (max-width: 900px) {
  .sectors-grid,
  .stats-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .benefits-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .sectors-grid,
  .stats-grid {
    grid-template-columns: 1fr;
  }
}

/* ===== Layouts diferenciados por sitio ===== */
.extra-sectores__note,
.extra-beneficios__note {
  margin-top: 1.25rem;
  font-size: 0.88rem;
  text-align: center;
}

.sector-timeline {
  list-style: none;
  max-width: 640px;
  margin: 0 auto;
  border-left: 3px solid var(--teal, #006978);
  padding-left: 1.5rem;
}
.sector-timeline__item { position: relative; padding: 0 0 1.35rem 0.5rem; }
.sector-timeline__step {
  position: absolute; left: -2.15rem; top: 0;
  width: 1.65rem; height: 1.65rem; border-radius: 50%;
  background: var(--teal, #006978); color: #fff;
  font-size: 0.65rem; font-weight: 700;
  display: flex; align-items: center; justify-content: center;
}
.sector-timeline h3 { font-size: 0.95rem; margin-bottom: 0.25rem; color: var(--navy, #003d4d); }
.sector-timeline p { font-size: 0.85rem; color: var(--gray-dark, #607d8b); }

.extra-stats--strip { background: var(--navy, #003d4d); color: #fff; }
.extra-stats--strip h2, .extra-stats--strip .section__lead { color: #fff; text-align: center; }
.stats-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; text-align: center; }
.stats-strip__item strong { display: block; font-size: 1.25rem; color: var(--teal-light, #e0f2f4); }
.stats-strip__item span { font-size: 0.78rem; opacity: 0.85; }

.benefits-checklist { max-width: 620px; margin: 0 auto; list-style: none; }
.benefits-checklist li {
  padding: 0.75rem 0 0.75rem 1.5rem; border-bottom: 1px solid var(--gray, #eceff1);
  font-size: 0.9rem; position: relative;
}
.benefits-checklist li::before { content: "✓"; position: absolute; left: 0; color: var(--teal, #006978); font-weight: 700; }

.extra-sectores--editorial { background: var(--cream-dark, #f0ebe3); }
.sector-editorial-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
.sector-editorial { border-top: 3px solid var(--coral, #e17055); padding-top: 1rem; }
.sector-editorial__num { font-family: var(--serif, Georgia, serif); font-size: 2rem; color: var(--coral, #e17055); opacity: 0.35; }
.sector-editorial h3 { font-family: var(--serif, Georgia, serif); font-size: 1.05rem; margin: 0.35rem 0; }
.sector-editorial p { font-size: 0.88rem; color: var(--text-muted, #636e72); }
.stats-editorial { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.75rem; }
.stats-editorial__cell { background: var(--white, #fff); border: 1px solid var(--cream-dark, #f0ebe3); padding: 1rem; text-align: center; }
.stats-editorial__num { display: block; font-family: var(--serif, Georgia, serif); font-size: 1.35rem; color: var(--coral, #e17055); }
.benefits-columns { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.benefits-columns__col { border-left: 2px solid var(--coral, #e17055); padding-left: 1rem; }
.extra-faq--editorial .faq-item { border-radius: 0; border-left: 4px solid var(--coral, #e17055); }

.sector-iconrow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.sector-iconrow__item { text-align: center; padding: 1rem 0.75rem; background: var(--green-light, #e8f5e9); border-radius: var(--radius, 10px); }
.sector-iconrow__dot { display: block; width: 12px; height: 12px; border-radius: 50%; margin: 0 auto 0.65rem; }
.sector-iconrow h3 { font-size: 0.88rem; color: var(--green, #1b5e20); margin-bottom: 0.35rem; }
.sector-iconrow p { font-size: 0.78rem; color: var(--gray-500, #6b7c6d); }
.stats-pills { display: flex; flex-wrap: wrap; gap: 0.65rem; justify-content: center; }
.stat-pill { background: var(--green-light, #e8f5e9); border: 1px solid var(--green-mid, #2e7d32); border-radius: 999px; padding: 0.5rem 1rem; font-size: 0.82rem; }
.extra-faq--green .faq-item summary { color: var(--green, #1b5e20); }

.sector-zigzag__row { display: grid; grid-template-columns: auto 1fr; gap: 1.25rem; align-items: start; padding: 1rem 0; border-bottom: 1px solid var(--gray-200, #d8e0ea); }
.sector-zigzag__badge { width: 2.5rem; height: 2.5rem; border-radius: 50%; border: 2px solid; display: flex; align-items: center; justify-content: center; font-weight: 700; }
.extra-stats--gold { background: var(--navy, #0a2540); color: #fff; }
.extra-stats--gold h2, .extra-stats--gold .section__lead { color: #fff; text-align: center; }
.extra-stats--gold .stat-card { background: rgba(255,255,255,0.06); border-color: var(--gold, #c9a227); }
.extra-stats--gold .stat-card__num { color: var(--gold, #c9a227); }
.extra-stats--gold .stat-card__label { color: rgba(255,255,255,0.8); }
.extra-faq--navy .faq-item { background: var(--gray-50, #f7f9fc); border-top: 3px solid var(--gold, #c9a227); }

.extra-sectores--hex { background: var(--bg-elevated, #161b22); }
.extra-sectores--hex h2, .extra-sectores--hex .section__lead { color: var(--text, #e6edf3); }
.extra-sectores--hex .extra-sectores__note { color: var(--text-muted, #8b949e); }
.sector-hex-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
.sector-hex { padding: 1.15rem; background: var(--bg-card, #1c2333); border: 1px solid var(--border, rgba(99,102,241,0.2)); clip-path: polygon(8% 0, 100% 0, 92% 100%, 0 100%); }
.sector-hex h3 { font-size: 0.92rem; color: var(--cyan, #22d3ee); margin-bottom: 0.35rem; }
.sector-hex p { font-size: 0.82rem; color: var(--text-muted, #8b949e); }
.stats-glow { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.stat-glow { text-align: center; padding: 1rem; background: var(--bg-card, #1c2333); border: 1px solid var(--cyan, #22d3ee); box-shadow: 0 0 20px var(--glow, rgba(34,211,238,0.15)); border-radius: var(--radius, 12px); }
.stat-glow__num { display: block; font-size: 1.2rem; color: var(--cyan, #22d3ee); font-weight: 700; }
.stat-glow__lbl { font-size: 0.75rem; color: var(--text-muted, #8b949e); }
.benefits-dark-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.benefit-dark { padding: 1.15rem; background: var(--bg-card, #1c2333); border-left: 3px solid var(--indigo, #6366f1); }
.benefit-dark h3 { color: var(--text, #e6edf3); font-size: 0.92rem; }
.benefit-dark p { color: var(--text-muted, #8b949e); font-size: 0.82rem; }
.extra-faq--dark .faq-item { background: var(--bg-card, #1c2333); border-color: var(--border, rgba(99,102,241,0.2)); }
.extra-faq--dark .faq-item summary { color: var(--text, #e6edf3); }
.extra-faq--dark .faq-item p { color: var(--text-muted, #8b949e); }

.sector-bands { display: flex; flex-direction: column; gap: 0.65rem; }
.sector-band { display: grid; grid-template-columns: auto 1fr; gap: 1rem; align-items: center; padding: 1rem 1.25rem; background: var(--gray-100, #eceff1); border-left: 4px solid var(--orange, #ff6f00); }
.sector-band__idx { font-size: 1.5rem; font-weight: 800; color: var(--orange, #ff6f00); opacity: 0.5; }
.stats-industrial { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.5rem; }
.stat-industrial { background: var(--slate-800, #263238); color: #fff; text-align: center; padding: 1rem 0.5rem; }
.stat-industrial span { display: block; font-size: 1.15rem; font-weight: 700; color: var(--orange, #ff6f00); }
.stat-industrial small { font-size: 0.72rem; opacity: 0.85; }
.extra-faq--industrial .faq-item { border-left: 4px solid var(--orange, #ff6f00); }

.sector-bento { display: grid; grid-template-columns: 1.2fr 1fr; gap: 0.85rem; }
.sector-bento__hero { grid-row: span 3; padding: 1.5rem; background: var(--gradient-soft, linear-gradient(160deg, #f3e5f5, #fff)); border-radius: var(--radius-lg, 22px); border: 1px solid var(--lavender-200, #e1bee7); }
.sector-bento__side { display: flex; flex-direction: column; gap: 0.65rem; }
.sector-bento__cell { padding: 0.85rem 1rem; background: var(--white, #fff); border-radius: var(--radius, 14px); border: 1px solid var(--lavender-200, #e1bee7); }
.sector-bento h3 { font-size: 0.92rem; color: var(--purple-900, #4a148c); margin-bottom: 0.3rem; }
.sector-bento p { font-size: 0.8rem; color: var(--gray-500, #757575); }
.stats-gradient { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.75rem; }
.stat-gradient { text-align: center; padding: 1rem; background: var(--gradient-form, linear-gradient(145deg, #651fff, #b388ff)); color: #fff; border-radius: var(--radius, 14px); }
.stat-gradient strong { display: block; font-size: 1.2rem; }
.stat-gradient span { font-size: 0.72rem; opacity: 0.9; }
.extra-faq--purple .faq-item { border: 1px solid var(--lavender-200, #e1bee7); background: var(--lavender-100, #f3e5f5); }
.extra-faq--purple summary { color: var(--purple-900, #4a148c); }

.extra-faq .faq-item { border: 1px solid var(--border, rgba(0,0,0,0.1)); border-radius: var(--radius, 8px); margin-bottom: 0.65rem; overflow: hidden; }
.extra-faq .faq-item summary { padding: 0.9rem 1rem; font-weight: 600; cursor: pointer; }
.extra-faq .faq-item p { padding: 0 1rem 1rem; font-size: 0.9rem; line-height: 1.55; }

@media (max-width: 900px) {
  .sector-editorial-grid, .sector-iconrow, .sector-hex-grid, .benefits-columns, .benefits-dark-grid,
  .stats-strip, .stats-editorial, .stats-glow, .stats-industrial, .stats-gradient { grid-template-columns: repeat(2, 1fr); }
  .sector-bento { grid-template-columns: 1fr; }
  .sector-bento__hero { grid-row: auto; }
}
@media (max-width: 520px) {
  .sector-iconrow, .stats-strip, .stats-editorial, .stats-glow, .stats-industrial, .stats-gradient,
  .benefits-columns, .benefits-dark-grid { grid-template-columns: 1fr; }
  .stats-pills { flex-direction: column; align-items: stretch; }
}
