/* ==========================================================================
   Integración WordPress — recuperación del preloader y accesibilidad sin JS.
   El sitio aprobado ocultaba el contenido hasta que JS disparaba la entrada
   (.ig-in / .revealed) y removía el #loader. En WordPress el contenido debe
   permanecer visible aunque el JS/WebGL falle. Estas reglas garantizan eso.
   ========================================================================== */

/* 1) SIN JavaScript: nunca bloquear con el loader; mostrar contenido y menú. */
html:not(.iig-js) #loader { display: none !important; }
html:not(.iig-js) #site-header { opacity: 1 !important; transform: none !important; }
html:not(.iig-js) .ig-hero__eyebrow,
html:not(.iig-js) .ig-hero__title .ig-line,
html:not(.iig-js) .ig-hero__cta,
html:not(.iig-js) .ig-cap { opacity: 1 !important; transform: none !important; filter: none !important; }
html:not(.iig-js) .ig-hero__text { opacity: 0.85 !important; transform: none !important; filter: none !important; }
/* Sin JS, la foto del hero se ve directamente (el halftone es una mejora). */
html:not(.iig-js) .ig-hero__img { opacity: 1 !important; }
html:not(.iig-js) .ig-hero__canvas { display: none !important; }

/* 2) Liberación por recuperación (la clase la añade loader-recovery.js). */
html.is-ready #loader { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; }

/* 3) Si hubo error de carga, dejamos rastro visual mínimo (sin romper diseño). */
html.has-load-error #loader { display: none !important; }

/* ==========================================================================
   4) Páginas internas (no portada) — Política de privacidad, Tratamiento de
   datos, etc. Visten el contenido del editor de bloques con los mismos
   tokens de marca que el resto del sitio (Poppins en títulos, cyan en
   enlaces, jerarquía de blancos/grises igual que .h-section/.sub-section).
   "body.home" solo lo trae la portada (is_front_page()): así estas reglas
   nunca tocan las secciones custom de la portada.
   ========================================================================== */
body.page:not(.home) .wp-block-post-title {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.05;
  font-size: clamp(32px, 5vw, 52px);
  margin-bottom: 0.5em;
}
body.page:not(.home) .wp-block-post-content h2,
body.page:not(.home) .wp-block-post-content h3 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #fff;
  margin-top: 2.4em;
  margin-bottom: 0.6em;
}
body.page:not(.home) .wp-block-post-content h2:first-child,
body.page:not(.home) .wp-block-post-content h3:first-child { margin-top: 0; }
body.page:not(.home) .wp-block-post-content p {
  color: rgba(255,255,255,0.78);
  font-weight: 300;
  line-height: 1.7;
  font-size: clamp(15px, 1.1vw, 17px);
}
body.page:not(.home) .wp-block-post-content a {
  color: var(--cyan);
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.page:not(.home) .wp-block-post-content a:hover { opacity: 0.8; }
body.page:not(.home) .wp-block-post-content ul {
  list-style: none;
  margin: 1.2em 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6em;
}
body.page:not(.home) .wp-block-post-content li {
  position: relative;
  padding-left: 1.4em;
  color: rgba(255,255,255,0.78);
  font-weight: 300;
  line-height: 1.6;
  font-size: clamp(15px, 1.1vw, 17px);
}
body.page:not(.home) .wp-block-post-content li::before {
  content: "";
  position: absolute;
  left: 0; top: 0.6em;
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--cyan);
}
body.page:not(.home) .wp-block-post-content em {
  display: block;
  margin-top: 2.4em;
  font-size: 13px;
  color: rgba(255,255,255,0.5);
  font-style: italic;
}
