:root {
	--mi-font-sans: Quicksand, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--mi-color-primary: #6295a4;
	--mi-color-primary-dark: #234f5d;
	--mi-color-primary-deep: #153846;
	--mi-color-text: #172f3a;
	--mi-color-muted: #526a74;
	--mi-color-bg: #f7f9f9;
	--mi-color-surface: #ffffff;
	--mi-color-soft: #e8f2f4;
	--mi-color-border: #d8e4e7;
	--mi-content: 1260px;
	--mi-wide: 1440px;
	--mi-radius: 16px;
	--mi-shadow: 0 10px 30px rgba(21, 56, 70, 0.08);
}

*, *::before, *::after { box-sizing: border-box; }
html {
	scroll-behavior: smooth;
	background: var(--mi-color-primary-deep);
}
body {
	margin: 0;
	min-height: 100vh;
	min-height: 100dvh;
	background: var(--mi-color-bg);
	color: var(--mi-color-text);
	font-family: var(--mi-font-sans);
	line-height: 1.6;
}
img { max-width: 100%; height: auto; }
a { color: var(--mi-color-primary-dark); }
a:hover { color: var(--mi-color-primary-deep); }
button, input, textarea, select { font: inherit; }
.screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.mi-skip-link {
	position: fixed;
	top: 10px;
	left: -10000px;
	z-index: 1000001;
	width: auto;
	height: auto;
	padding: 10px 14px;
	border: 2px solid #dc8c46;
	border-radius: 8px;
	background: #fff;
	color: #153846;
	font-weight: 800;
	text-decoration: none;
	box-shadow: 0 8px 24px rgba(21,56,70,.18);
}
.mi-skip-link:focus,
.mi-skip-link:focus-visible {
	left: 10px;
}
.mi-main { width: 100%; }
.mi-main--content { max-width: var(--mi-content); margin: 0 auto; padding: clamp(24px, 4vw, 56px) clamp(16px, 3vw, 28px); }
.mi-main--elementor { max-width: none; margin: 0; padding: 0; }
.mi-entry, .mi-page:not(.elementor) { margin-bottom: 28px; }
.mi-entry__title, .mi-page__title, .mi-archive-header h1 { margin-top: 0; color: var(--mi-color-primary-deep); }
.mi-entry__title a { text-decoration: none; }
.mi-entry__meta { color: var(--mi-color-muted); font-size: .92rem; }
.entry-content > :first-child { margin-top: 0; }
.entry-content > :last-child { margin-bottom: 0; }
.mi-entry__featured { margin: 24px 0; }
.mi-entry__featured img { border-radius: var(--mi-radius); }
.wp-block-image img { height: auto; }


/* =========================================================
   1.1.7+ · CINTURÓN RESPONSIVE GLOBAL
   El theme impide que un componente aislado ensanche el documento.
   ========================================================= */
html {
	width: 100%;
	max-width: 100%;
	overflow-x: clip;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body {
	width: 100%;
	max-width: 100%;
	overflow-x: clip;
	position: relative;
}

.mi-main,
.mi-page,
.mi-page__content,
.mi-entry,
.mi-entry__content,
.entry-content,
.elementor,
.elementor-section-wrap,
.elementor-element,
.elementor-widget,
.elementor-widget-container,
.e-con,
.e-con-inner,
.wp-site-blocks {
	min-width: 0;
	max-width: 100%;
}

.entry-content img,
.entry-content video,
.entry-content iframe,
.entry-content embed,
.entry-content object,
.mi-page__content img,
.mi-page__content video,
.mi-page__content iframe,
.mi-page__content embed,
.mi-page__content object {
	max-width: 100%;
}

.entry-content iframe,
.mi-page__content iframe {
	width: 100%;
}

.entry-content pre,
.mi-page__content pre {
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.entry-content a,
.entry-content p,
.entry-content li,
.mi-page__content a,
.mi-page__content p,
.mi-page__content li {
	overflow-wrap: anywhere;
}

@media (max-width: 782px) {
	/* Safari amplía la página si un control editable baja de 16 px. */
	input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not([type="button"]):not([type="submit"]):not([type="reset"]),
	select,
	textarea {
		max-width: 100%;
		min-width: 0;
		font-size: 16px !important;
	}

	/* Elementor heredado puede conservar anchos calculados de escritorio. */
	.elementor,
	.elementor-section,
	.elementor-container,
	.elementor-column,
	.elementor-widget-wrap,
	.elementor-element,
	.elementor-widget-container,
	.e-con,
	.e-con-inner {
		min-width: 0 !important;
		max-width: 100% !important;
	}
}
