/* ============================================================
   Global Mission Academy - gm-wp.css
   Adaptador para WordPress. El diseno original envolvia todo en un
   contenedor .g-scroll con scroll propio; en WordPress la pagina hace
   scroll de forma natural en el documento. Aqui se reproducen esos
   comportamientos sin ese contenedor y se respeta la cabecera sticky.
   Requiere: colors_and_type.css + components.css + styles.css (en ese orden).
   ============================================================ */

/* El documento hace scroll, no un wrapper. Nada de overflow:hidden en
   html/body (rompe position:sticky de la cabecera). */
html { scroll-behavior: smooth; }
body.gm-site {
	background: var(--paper);
	letter-spacing: -1px;
	overflow-x: hidden;            /* evita scroll horizontal por overflow puntual */
}

/* Montserrat un punto mas junto; el serif display y .g-key conservan tracking. */
body.gm-site h1,
body.gm-site h2,
body.gm-site .g-key,
body.gm-site .g-display,
body.gm-site .g-hero__h,
body.gm-site .g-aud__h,
body.gm-site .g-langs__h { letter-spacing: normal; }

/* Secciones a pantalla completa (equivalente a .g-scroll > X del diseno). */
body.gm-site .g-hero,
body.gm-site .g-aud,
body.gm-site .g-skills,
body.gm-site .g-scale {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
}
/* La CTA de cierre no necesita pantalla completa. */
body.gm-site .g-cta { min-height: 0; }

/* Pantallas de poca altura (p. ej. portatiles): no forzar 100vh para no
   recortar contenido. */
@media (max-height: 880px) {
	body.gm-site .g-hero,
	body.gm-site .g-aud,
	body.gm-site .g-skills,
	body.gm-site .g-scale {
		min-height: 0;
		justify-content: flex-start;
	}
	body.gm-site .g-hero__grid { min-height: 0; padding: 48px 0 56px; }
}

/* Offset de anclas para que la cabecera sticky (102px) no tape el titulo. */
body.gm-site [id] { scroll-margin-top: 112px; }
@media (max-width: 960px) {
	body.gm-site [id] { scroll-margin-top: 86px; }
}

/* La cabecera del diseno es sticky; reforzamos por si alguna regla de
   Elementor/Hello interfiere. */
body.gm-site .g-hd { position: sticky; top: 0; z-index: 60; }

/* Elementor Canvas no aporta margenes; aseguramos ancho completo de las
   secciones HTML y eliminamos el padding/margen por defecto de los
   contenedores de Elementor para que cada seccion del diseno quede a ras. */
body.gm-site .elementor-section,
body.gm-site .elementor-container,
body.gm-site .elementor-column,
body.gm-site .elementor-column-wrap,
body.gm-site .elementor-widget-wrap,
body.gm-site .elementor-widget-html,
body.gm-site .elementor-widget-html .elementor-widget-container {
	width: 100%;
	max-width: 100%;
	padding: 0;
	margin: 0;
}
body.gm-site .elementor-widget:not(:last-child) { margin-bottom: 0; }
/* La seccion HTML del diseno ya define su propio ancho/centrado via .g-wrap. */
body.gm-site .elementor-section .elementor-container { max-width: 100%; }

/* Reset minimo de margenes del documento (Hello ya lo hace, redundante seguro). */
body.gm-site { margin: 0; }
