/* fce-pdf-phase-web.css — Mejoras Fase Web (PDF "Mejoras para página web -2") */

/* ── Animaciones suaves ── */
@keyframes fceFadeUpIn {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fceLetterIn {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes fceImgFloat {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-6px); }
}

.fade-up,
.hero__content,
.sl-hero__content,
.am-hero__content,
.sec-header,
.home-pillars__card {
  animation: fceFadeUpIn .7s ease both;
}

.hero__title span,
.sl-hero__title span,
.am-hero__title span,
.sec-title span {
  display: inline-block;
  animation: fceLetterIn 1.15s cubic-bezier(0.22, 1, 0.36, 1) .1s both;
}

.home-split__media img,
.am-propuesta__photo,
.sl-why__photo,
figure img[class*="__photo"]:not(.solow-fce-proofs__photo):not(.sl-facultad-card__photo),
.sl-catalog-cta__media img {
  animation: fceImgFloat 5s ease-in-out infinite;
}

@media (prefers-reduced-motion: reduce) {
  .home-split__media img,
  .am-propuesta__photo,
  .sl-why__photo,
  figure img[class*="__photo"],
  .sl-catalog-cta__media img {
    animation: none;
  }
}

/* ── Hero: contenido más arriba (botones en primera vista) ── */
.hero,
.sl-hero,
.am-hero,
.page-hero,
.internal-hero {
  min-height: clamp(520px, 88vh, 760px);
  padding-top: clamp(72px, 10vh, 110px);
  padding-bottom: clamp(32px, 6vh, 64px);
}
.hero__content,
.sl-hero__content,
.am-hero__content,
.page-hero__inner {
  padding-top: 0;
  margin-top: -12px;
}

/* ── Imagen + texto: más separación ── */
.home-split,
.home-pillars,
.am-propuesta__grid,
.sl-why__grid,
.nosotros-split {
  gap: clamp(32px, 5vw, 72px) !important;
}
.home-split__copy p,
.home-pillars__desc {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
/* More: no truncar leads de sección ni números fantasma */
body.body--unit-more .more-landing .sec-lead,
body.body--unit-more .more-landing .am-modalidades .sec-lead {
  display: block;
  -webkit-line-clamp: unset;
  line-clamp: unset;
  -webkit-box-orient: unset;
  overflow: visible;
  max-height: none;
}
body.body--unit-more .more-landing .more-process__ghost,
body.body--unit-more .more-landing .am-empresas-feature__step,
body.body--unit-more .more-landing .am-propuesta-card__num {
  display: none !important;
}

/* ── Óvalos / recortes de imagen ── */
.img-oval,
.am-propuesta__media,
.more-card img,
.sl-catalog-cta__media {
  overflow: hidden;
}
body.body--unit-solow .sl-why__media--blob {
  overflow: visible;
}
.img-oval img,
.sl-why__media img,
.am-propuesta__photo {
  object-fit: cover;
  object-position: center top;
}

/* ── Botón flotante ecosistema / Solow S ── */
.body--unit-solow .fce-eco-float__btn {
  background: rgba(13, 61, 71, .92) !important;
  border: 2.5px solid #fff !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .22) !important;
}
.body--unit-solow .fce-eco-float__btn img.fce-eco-float__btn-logo--brand {
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal;
}
.wa-float {
  bottom: clamp(16px, 3vh, 28px);
  right: clamp(12px, 2vw, 22px);
  z-index: 9000;
  pointer-events: none;
}
.wa-float > * { pointer-events: auto; }
.wa-float .fce-eco-float { margin-bottom: 10px; }

/* ── Footer: sin "Ver más" en servicios (FCE) ── */
.footer__col a[href="/servicios.php"] {
  display: none;
}

/* Footer Solow: logo claro sobre fondo oscuro; tagline completo sin readmore */
body.body--unit-solow .footer .solow-brand-logo__img--light {
  display: none !important;
}
body.body--unit-solow .footer .solow-brand-logo__img--dark {
  display: block !important;
}
body.body--unit-solow .footer .solow-brand-logo--footer .solow-brand-logo__img {
  max-height: 46px;
  max-width: min(240px, 52vw);
  width: auto;
  height: auto;
}
body.body--unit-solow .footer__intro .footer__tagline {
  display: block;
  -webkit-line-clamp: unset;
  max-height: none;
  overflow: visible;
}
body.body--unit-solow .footer__intro .readmore-toggle,
body.body--unit-solow .footer__intro [data-readmore-toggle] {
  display: none !important;
}

.body--unit-solow .footer__prebar-phrase::before {
  content: none;
}
.footer--solow-prebar .footer__prebar-phrase {
  font-style: italic;
  font-weight: 600;
}

/* ── More: quitar estrellas del hero ── */
.am-hero__stars { display: none !important; }
.am-hero__sub {
  max-width: 38rem;
  line-height: 1.55;
}

/* ── Catálogo Solow: solo "Ver catálogo" ── */
.sl-catalog-cta__action .sl-catalog-cta__btn:not([data-catalogo-open]) {
  display: none !important;
}

/* ── FAQ estilo PDF (texto izq, acordeón der) ── */
.solow-faq-layout,
.more-faq-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1.5rem, 3vw, 2rem);
  align-items: start;
}
@media (min-width: 900px) {
  .solow-faq-layout,
  .more-faq-layout {
    grid-template-columns: minmax(0, 0.36fr) minmax(0, 0.64fr);
    gap: clamp(2rem, 4vw, 3.25rem);
  }
}

/* ── Estadísticas: gráficos planos 2D, sin recuadro de ejes ── */
body.body--unit-solow .solow-landing .sl-chart3d,
body.body--unit-solow .solow-landing .sl-chart3d--flat {
  transform: none !important;
  perspective: none !important;
  box-shadow: none !important;
  background: transparent;
  border: none;
  padding: clamp(72px, 11vw, 118px) 0 0 0;
}
body.body--unit-solow .solow-landing .sl-chart3d__bar,
body.body--unit-solow .solow-landing .sl-chart3d__bar::before,
body.body--unit-solow .solow-landing .sl-chart3d__bar::after {
  transform: none !important;
  filter: none !important;
  border-radius: 10px 10px 0 0;
}
body.body--unit-solow .solow-landing .sl-chart3d__bar::before,
body.body--unit-solow .solow-landing .sl-chart3d__bar::after {
  content: none !important;
  display: none !important;
}
body.body--unit-solow .solow-landing .sl-chart3d__col {
  transform: none !important;
}
body.body--unit-solow .solow-landing .sl-chart3d__col::after {
  display: none !important;
}
body.body--unit-solow .solow-landing .sl-chart3d__axes {
  display: none !important;
}
body.body--unit-solow .solow-landing .sl-chart3d__bar {
  box-shadow: 0 10px 24px color-mix(in srgb, var(--solow-brand-accent, #0d9488) 22%, transparent);
}
.sl-stats-chart,
.solow-stats__chart,
.chart-3d {
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
  border-radius: 12px;
  background: var(--surface, #fff);
  border: 1px solid var(--border, #e5e7eb);
}
.solow-puesto-1-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: linear-gradient(145deg, #0d9488, #14b8a6);
  color: #fff;
  font-weight: 800;
  font-size: .72rem;
  letter-spacing: .02em;
  box-shadow: 0 4px 14px rgba(13, 148, 136, .35);
}

/* ── More: sección aliados redundante (PDF) ── */
body.body--unit-more .more-landing .am-aliados {
  display: none !important;
}

/* ── Formulario contacto: sin título duplicado en card More ── */
.home-contact-nice__card-title:empty,
.home-contact-nice--hide-card-title .home-contact-nice__card-title {
  display: none;
}
.home-contact-nice--hide-card-title .home-contact-nice__card-lead {
  margin-top: 0;
  font-size: 1rem;
  font-weight: 600;
}

/* ── Herramientas / cursos More ── */
.more-tools {
  padding: clamp(48px, 8vw, 80px) 0;
}
.more-tools__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 14px;
  margin-top: 24px;
}
.more-tools__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 18px 12px;
  border-radius: 14px;
  border: 1.5px solid var(--border);
  background: var(--surface);
  text-align: center;
  font-weight: 600;
  font-size: .88rem;
  color: var(--text);
  transition: transform .2s ease, box-shadow .2s ease;
}
.more-tools__item:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(0, 0, 0, .08);
}
.more-tools__icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--teal-light, #e6fffa);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--teal-dark, #0f766e);
}

/* ── Buscador CI: resultados no atrapados ── */
.admin-form,
.admin-layout,
.admin-main,
.rec-dash-primary {
  overflow: visible !important;
}
.admin-table-wrap {
  overflow-x: auto;
  overflow-y: visible;
}

/* ── Auth marca Solow/More ── */
.auth-card--brand-solow { border-top: 4px solid #178a83; }
.auth-card--brand-more  { border-top: 4px solid #2563eb; }
.auth-card--brand-solow .auth-logo,
.auth-card--brand-more .auth-logo { max-height: 56px; width: auto; }
.form-input--uppercase { text-transform: uppercase; }

/* ── Encabezados internos FCE ── */
.page-hero--internal {
  min-height: clamp(380px, 62vh, 520px);
  padding-top: 88px;
}
.navbar--scrolled,
.navbar.navbar--compact {
  backdrop-filter: blur(10px);
  box-shadow: 0 4px 20px rgba(0, 0, 0, .06);
}

/* ── Responsive formularios ── */
@media (max-width: 640px) {
  .home-contact-nice__grid { grid-template-columns: 1fr; }
  .hero, .sl-hero, .am-hero { min-height: auto; padding-top: 88px; }
}
