/* Encuestas Públicas 1.25.1 — Elementor global consistente dentro y fuera del editor. */
.epu-elementor-stage3 {
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100%;
	max-width: none;
}
.epu-elementor-stage3 > .elementor-element,
.epu-stage3-public-page .elementor-widget,
.epu-stage3-public-page .elementor-widget-container { width: 100%; }
.epu-stage3-public-page { min-height: 60vh; overflow: clip; }
.epu-stage3-public-page .epu-guide-hero,
.epu-stage3-public-page .epu-guide-steps,
.epu-stage3-public-page .epu-guide-cta,
.epu-stage3-public-page .epu-publish-hero,
.epu-stage3-public-page .epu-publish-examples,
.epu-stage3-public-page .epu-ai-hero,
.epu-stage3-public-page .epu-ai-benefits,
.epu-stage3-public-page .epu-ai-modules,
.epu-stage3-public-page .epu-ai-steps,
.epu-stage3-public-page .epu-ai-control,
.epu-stage3-public-page .epu-ai-final,
.epu-stage3-public-page .epu-directory-hero,
.epu-stage3-public-page .epu-directory-content,
.epu-stage3-public-page .epu-plans-hero,
.epu-stage3-public-page .epu-plans-content,
.epu-stage3-public-content { background: var(--epu-s3-surface-bg); }

/* Las superficies globales no agregan márgenes ni anchos ajenos al tema. */
.epu-global-template,
.epu-global-template > .elementor,
.epu-global-template .elementor-element,
.epu-global-template .elementor-widget-container { width: 100%; }
.epu-global-template .epu-elementor-stage3 { min-height: 0; }
.epu-global-template--header { position: sticky; top: 0; z-index: 50; }
.epu-global-template--header .epu-header,
.elementor-widget-epu-s3-global-header .epu-header,
.epu-elementor-stage3-header .epu-header {
	position: relative;
	top: auto;
	background: var(--epu-s3-header-bg, #fff) !important;
	border-bottom-color: var(--epu-s3-header-border, #e1e3e6) !important;
}
.epu-global-template--header .epu-header > .epu-shell,
.elementor-widget-epu-s3-global-header .epu-header > .epu-shell,
.epu-elementor-stage3-header .epu-header > .epu-shell {
	width: min(calc(100% - 24px), var(--epu-s3-header-shell, 1260px));
}
.epu-global-template--header .epu-nav a,
.elementor-widget-epu-s3-global-header .epu-nav a,
.epu-elementor-stage3-header .epu-nav a { color: var(--epu-s3-header-link, #303238) !important; }
.epu-global-template--header .epu-header .epu-header__cta,
.elementor-widget-epu-s3-global-header .epu-header .epu-header__cta,
.epu-elementor-stage3-header .epu-header .epu-header__cta {
	background: var(--epu-s3-action-bg, #c9360d) !important;
	border-color: var(--epu-s3-action-bg, #c9360d) !important;
	color: var(--epu-s3-action-color, #fff) !important;
}
.epu-global-template--footer .epu-footer,
.elementor-widget-epu-s3-global-footer .epu-footer,
.epu-elementor-stage3-footer .epu-footer {
	background: var(--epu-s3-footer-bg, #111) !important;
	border-top-color: var(--epu-s3-footer-border, #30343a) !important;
	color: var(--epu-s3-footer-text, #c7cbd1) !important;
}
.epu-global-template--footer .epu-footer > .epu-shell,
.elementor-widget-epu-s3-global-footer .epu-footer > .epu-shell,
.epu-elementor-stage3-footer .epu-footer > .epu-shell {
	width: min(calc(100% - 24px), var(--epu-s3-footer-shell, 1260px));
}
.epu-global-template--footer .epu-footer p,
.elementor-widget-epu-s3-global-footer .epu-footer p,
.epu-elementor-stage3-footer .epu-footer p { color: var(--epu-s3-footer-text, #c7cbd1) !important; }
.epu-global-template--footer .epu-footer__group strong,
.elementor-widget-epu-s3-global-footer .epu-footer__group strong,
.epu-elementor-stage3-footer .epu-footer__group strong { color: var(--epu-s3-footer-title, #fff) !important; }
.epu-global-template--footer .epu-footer__group a,
.epu-global-template--footer .epu-footer .epu-brand,
.elementor-widget-epu-s3-global-footer .epu-footer__group a,
.elementor-widget-epu-s3-global-footer .epu-footer .epu-brand,
.epu-elementor-stage3-footer .epu-footer__group a,
.epu-elementor-stage3-footer .epu-footer .epu-brand { color: var(--epu-s3-footer-link, #fff) !important; }
.epu-global-template--footer .epu-footer__bottom,
.elementor-widget-epu-s3-global-footer .epu-footer__bottom,
.epu-elementor-stage3-footer .epu-footer__bottom { border-top-color: var(--epu-s3-footer-border, #30343a) !important; }

/* La superficie del editor reproduce el resultado real y permanece fácil de seleccionar. */
body.epu-global-editor-preview { min-height: 100vh; background: #e8edf3 !important; }
body.epu-global-editor-preview .elementor-widget-epu-s3-global-header,
body.epu-global-editor-preview .elementor-widget-epu-s3-global-footer,
.elementor-editor-active .elementor-widget-epu-s3-global-header,
.elementor-editor-active .elementor-widget-epu-s3-global-footer {
	position: relative;
	min-height: 72px;
	outline: 2px dashed rgba(201,54,13,.55);
	outline-offset: -2px;
}
body.epu-global-editor-preview .elementor-widget-epu-s3-global-header::before,
body.epu-global-editor-preview .elementor-widget-epu-s3-global-footer::before,
.elementor-editor-active .elementor-widget-epu-s3-global-header::before,
.elementor-editor-active .elementor-widget-epu-s3-global-footer::before {
	position: absolute;
	z-index: 80;
	top: 6px;
	right: 8px;
	padding: 5px 9px;
	border-radius: 999px;
	background: #c9360d;
	color: #fff;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .04em;
	pointer-events: none;
}
body.epu-global-editor-preview .elementor-widget-epu-s3-global-header::before,
.elementor-editor-active .elementor-widget-epu-s3-global-header::before { content: "Cabecera global · clic para editar"; }
body.epu-global-editor-preview .elementor-widget-epu-s3-global-footer::before,
.elementor-editor-active .elementor-widget-epu-s3-global-footer::before { content: "Pie global · clic para editar"; }

/* Componentes que no existían como superficies reutilizables antes de la Etapa 3. */
.epu-plans-content--cta { padding-top: 0; }
.epu-stage3-public-content { padding: clamp(54px, 8vw, 100px) 0; }
.epu-stage3-public-content > .epu-shell { width: min(calc(100% - 32px), 960px); }
.epu-stage3-public-content h1 { margin: 8px 0 24px; color: #111; font-size: clamp(38px, 6vw, 68px); line-height: 1.03; }
.epu-stage3-public-content__body { color: #555d67; font-size: 16px; line-height: 1.75; }
.epu-stage3-public-content__body > :first-child { margin-top: 0; }
.epu-stage3-public-content__body > :last-child { margin-bottom: 0; }

/* Vista del editor: ayuda a reconocer el límite real de cada widget. */
.elementor-editor-active .epu-elementor-stage3 > .elementor-element { min-height: 20px; }

@media (max-width: 900px) {
	.epu-global-template--header .epu-header > .epu-shell,
	.elementor-widget-epu-s3-global-header .epu-header > .epu-shell { width: min(calc(100% - 20px), var(--epu-s3-header-shell, 1260px)); }
	.epu-global-template--footer .epu-footer > .epu-shell,
	.elementor-widget-epu-s3-global-footer .epu-footer > .epu-shell { width: min(calc(100% - 20px), var(--epu-s3-footer-shell, 1260px)); }
}
@media (max-width: 620px) {
	.epu-stage3-public-page { overflow: hidden; }
	.epu-stage3-public-content > .epu-shell { width: min(calc(100% - 22px), 960px); }
}
