/* css/pages/proceso/proceso.css · PÁGINA Tu proceso (/tu-proceso/) · solo en esa página
   Diseño de Figma «Tu proceso — Desktop 1920» (captura design/referencias/tu-proceso-completo.png). Bloques de arriba abajo, cada uno con su fondo:
     1 cabecera (mt-process-hero) · el olive (#BDB166 al 80 % → transparente, 599 u) y el degradado beige → blanco van en el fondo del body para que pasen por detrás del menú
     2 Terapia individual (mt-process-individual) · degradado blanco → #F5F5F0 · texto 760 u + foto 680 x 900 con degradado inferior
     3 Terapia de pareja (mt-process-couple) · beige → blanco → beige · foto a la izquierda 680 x 840, texto 800 u
     4 Modalidades (mt-process-modes) · fondo #F5F5F0 con tarjeta blanca de 1600 u y tres columnas separadas por una línea
     5 ¿Cómo empiezo mi proceso? (mt-process-steps) · beige → blanco → beige · tres tarjetas blancas
     6 Cierre (mt-process-start) · mismo degradado · título, frase y botón; después va el pie del sitio (plantilla Footer)
   Los bloques 2-5 son componentes de Balancia (página "Individual therapy") rellenados con el contenido del diseño; este archivo solo les da el aspecto de Figma.
   1 u = 1 px del diseño a 1920 px (--up = min(100vw / 1920, 1px)): escala con el ancho y no pasa de su tamaño. Hasta 1024 px se apila y las medidas pasan a px (final del archivo).
   Los selectores llevan .mt-page-proceso delante (peso 0,4,0): los ajustes de tipografía que los widgets de Balancia traen en su CSS pesan lo mismo que .elementor .clase y, cargando después, ganaban.
   Textos, imágenes, enlaces y listas se editan en Elementor; tamaños, colores y espacios viven aquí (no en Elementor).
*/

.mt-page-proceso {
	--up: min(calc(100vw / 1920), 1px);
	--brown: #301F15;
	--gold: #BDB166;
	--orange: #D35822;
	--beige: #F5F5F0;
	--line: #E9DFD2;
	/* arriba: el olive del diseño (599 u) sobre el degradado beige → blanco de la cabecera (de 127 a 726 u) */
	background:
		linear-gradient(180deg, rgba(189, 177, 102, .8), rgba(189, 177, 102, 0)) top / 100% calc(599 * var(--up)) no-repeat,
		linear-gradient(180deg, var(--beige) calc(127 * var(--up)), #fff calc(726 * var(--up)), #fff) top / 100% calc(726 * var(--up)) no-repeat,
		var(--beige);
}

/* ---------- comunes: sin los huecos y rellenos que Elementor y Balancia meten ---------- */
.mt-page-proceso .elementor :is(.mt-process-hero, .mt-process-individual, .mt-process-couple, .mt-process-modes, .mt-process-steps, .mt-process-start).e-con {
	box-sizing: border-box; display: flex; margin: 0; gap: 0; --gap: 0px; --row-gap: 0px; --column-gap: 0px; min-height: 0;
}
.mt-page-proceso .elementor :is(.mt-process-hero, .mt-process-individual, .mt-process-couple, .mt-process-modes, .mt-process-steps, .mt-process-start) :where(.elementor-widget) { margin: 0; }
.mt-page-proceso .elementor :is(.mt-process-h1, .mt-process-title, .mt-process-listtitle, .mt-process-modes-title, .mt-process-mode-title, .mt-process-steps-title, .mt-process-step-title, .mt-process-start-title) .elementor-heading-title {
	font-family: 'CS Calistha', serif; font-weight: 400; font-style: normal; text-transform: none; letter-spacing: 0; color: var(--brown); margin: 0;
}
.mt-page-proceso .elementor :is(.mt-process-h1, .mt-process-title, .mt-process-modes-title, .mt-process-steps-title, .mt-process-start-title) .elementor-heading-title i { font-style: italic; }
.mt-page-proceso .elementor :is(.mt-process-title, .mt-process-modes-title, .mt-process-steps-title, .mt-process-start-title, .mt-process-h1) .elementor-heading-title { font-size: calc(96 * var(--up)); line-height: calc(88 * var(--up)); }

/* ---------- 1 · cabecera ---------- */
.mt-page-proceso .elementor .mt-process-hero.mt-process-hero { flex-direction: column; align-items: center; gap: calc(24 * var(--up)); padding: calc(120 * var(--up)) calc(160 * var(--up)); background: none; }
.mt-page-proceso .elementor .mt-process-kicker .elementor-heading-title {
	font-family: 'Manrope', sans-serif; font-weight: 600; font-size: calc(24 * var(--up)); line-height: calc(33 * var(--up)); letter-spacing: .35em; text-transform: uppercase; text-align: center; color: var(--brown); margin: 0;
	padding-left: .35em; /* el espaciado de letras también va tras la última: se compensa para que quede centrado */
}
.mt-page-proceso .elementor .mt-process-intro { width: calc(1000 * var(--up)); max-width: 100%; }
.mt-page-proceso .elementor .mt-process-intro p { font-family: 'Manrope', sans-serif; font-weight: 500; font-size: calc(24 * var(--up)); line-height: calc(34 * var(--up)); text-align: center; color: var(--brown); margin: 0 0 calc(10 * var(--up)); }
.mt-page-proceso .elementor .mt-process-intro p:last-child { margin-bottom: 0; }

/* ---------- 2 y 3 · Terapia individual / Terapia de pareja ---------- */
.mt-page-proceso .elementor .mt-process-individual.mt-process-individual { flex-direction: column; align-items: center; padding: calc(80 * var(--up)) calc(160 * var(--up)) calc(160 * var(--up)); background: linear-gradient(180deg, #fff, var(--beige)); }
.mt-page-proceso .elementor .mt-process-couple.mt-process-couple { flex-direction: column; align-items: center; padding: calc(120 * var(--up)) calc(160 * var(--up)) calc(160 * var(--up)); background: linear-gradient(180deg, var(--beige), #fff 50%, var(--beige)); }
.mt-page-proceso .elementor :is(.mt-process-individual, .mt-process-couple) > .e-con { /* fila con el texto y la foto */
	box-sizing: border-box; display: flex; flex-direction: row; align-items: center; justify-content: center; gap: calc(120 * var(--up)); width: 100%; max-width: calc(1600 * var(--up)); margin: 0; padding: 0;
	--gap: calc(120 * var(--up)); --row-gap: 0px; --column-gap: calc(120 * var(--up)); min-height: 0;
}
.mt-page-proceso .elementor .mt-process-couple > .e-con { flex-direction: row-reverse; justify-content: flex-start; align-items: stretch; }

/* columna de texto */
.mt-page-proceso .elementor .mt-process-col.mt-process-col { display: flex; flex-direction: column; align-items: flex-start; flex: none; gap: 0; padding: 0; margin: 0; --gap: 0px; min-height: 0; }
.mt-page-proceso .elementor .mt-process-individual .mt-process-col { width: calc(760 * var(--up)); }
.mt-page-proceso .elementor .mt-process-couple .mt-process-col { width: calc(800 * var(--up)); }
.mt-page-proceso .elementor .mt-process-title { margin: 0 0 calc(33 * var(--up)); }
.mt-page-proceso .elementor .mt-process-couple .mt-process-title { margin-bottom: calc(24 * var(--up)); }
.mt-page-proceso .elementor .mt-process-kicker-sm { margin: 0 0 calc(32 * var(--up)); max-width: calc(464 * var(--up)); }
.mt-page-proceso .elementor .mt-process-couple .mt-process-kicker-sm { max-width: calc(567 * var(--up)); }
.mt-page-proceso .elementor .mt-process-kicker-sm .elementor-heading-title {
	font-family: 'Manrope', sans-serif; font-weight: 600; font-size: calc(16 * var(--up)); line-height: calc(22 * var(--up)); letter-spacing: .35em; text-transform: uppercase; text-align: left; color: var(--brown); margin: 0; max-width: calc(464 * var(--up));
}
.mt-page-proceso .elementor .mt-process-couple .mt-process-kicker-sm .elementor-heading-title { max-width: calc(567 * var(--up)); }
.mt-page-proceso .elementor .mt-process-text { width: 100%; margin: 0 0 calc(32 * var(--up)); }
.mt-page-proceso .elementor .mt-process-text p { font-family: 'Manrope', sans-serif; font-weight: 500; font-size: calc(24 * var(--up)); line-height: calc(34 * var(--up)); color: var(--brown); margin: 0 0 calc(20 * var(--up)); }
.mt-page-proceso .elementor .mt-process-couple .mt-process-text p { font-weight: 400; font-size: calc(20 * var(--up)); line-height: calc(32 * var(--up)); margin-bottom: calc(32 * var(--up)); }
.mt-page-proceso .elementor .mt-process-text p:last-child { margin-bottom: 0; }
.mt-page-proceso .elementor .mt-process-listtitle { margin: 0 0 calc(32 * var(--up)); }
.mt-page-proceso .elementor .mt-process-listtitle .elementor-heading-title { font-size: calc(32 * var(--up)); line-height: calc(38 * var(--up)); }

/* listas: dos columnas de 360 u (individual) / 330 u (pareja), 40 u entre ellas, ✺ + texto 20/32 */
.mt-page-proceso .elementor .mt-process-list.mt-process-list { display: flex; flex-direction: row; align-items: flex-start; gap: calc(40 * var(--up)); width: auto; margin: 0 0 calc(32 * var(--up)); padding: 0; --gap: calc(40 * var(--up)); --column-gap: calc(40 * var(--up)); min-height: 0; }
.mt-page-proceso .elementor .mt-process-list .elementor-widget-icon-list { width: calc(360 * var(--up)); flex: none; margin: 0; }
.mt-page-proceso .elementor .mt-process-couple .mt-process-list .elementor-widget-icon-list { width: calc(330 * var(--up)); }
.mt-page-proceso .elementor .mt-process-list .elementor-icon-list-items { display: flex; flex-direction: column; gap: calc(16 * var(--up)); margin: 0; padding: 0; }
.mt-page-proceso .elementor .mt-process-list .elementor-icon-list-item { display: flex; align-items: flex-start; gap: calc(14 * var(--up)); margin: 0 !important; padding: 0 !important; }
.mt-page-proceso .elementor .mt-process-list .elementor-icon-list-icon { flex: none; width: calc(15 * var(--up)); height: calc(32 * var(--up)); display: flex; align-items: center; margin: 0; padding: 0; }
.mt-page-proceso .elementor .mt-process-list .elementor-icon-list-icon i { font-size: calc(15 * var(--up)); line-height: 1; margin: 0; position: static; transform: none; color: var(--brown); }
.mt-page-proceso .elementor .mt-process-list .elementor-icon-list-text { font-family: 'Manrope', sans-serif; font-weight: 400; font-size: calc(20 * var(--up)); line-height: calc(32 * var(--up)); color: var(--brown); padding: 0; }

/* botones: dorado (mt-cta-pill, barrido beige en hover) y contorno (Leer más) */
.mt-page-proceso .elementor .mt-process-buttons.mt-process-buttons { display: flex; flex-direction: row; align-items: center; gap: calc(32 * var(--up)); width: auto; margin: 0; padding: 0; --gap: calc(32 * var(--up)); min-height: 0; }
.mt-page-proceso .elementor .mt-process-cta .elementor-button.elementor-button, .mt-page-proceso .elementor .mt-process-cta-sec .elementor-button.elementor-button {
	display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; height: calc(46 * var(--up)); padding: 0 calc(24 * var(--up)); margin: 0;
	border-radius: 999px; border: 0; box-shadow: none; font-family: 'Manrope', sans-serif; font-weight: 700; font-size: calc(16 * var(--up)); line-height: calc(22 * var(--up)); text-transform: uppercase; letter-spacing: 0;
}
.mt-page-proceso .elementor .mt-process-cta .elementor-button-text, .mt-page-proceso .elementor .mt-process-cta-sec .elementor-button-text { font: inherit; text-transform: inherit; }
.mt-page-proceso .elementor .mt-process-cta-sec .elementor-button.elementor-button { height: calc(48 * var(--up)); padding: 0 calc(48 * var(--up)); background: transparent; border: 1px solid var(--brown); color: var(--brown); transition: background-color .3s ease, color .3s ease; }
.mt-page-proceso .elementor .mt-process-cta-sec .elementor-button.elementor-button:is(:hover, :focus-visible) { background: var(--brown); color: #fff; }
.mt-page-proceso .elementor :is(.mt-process-cta, .mt-process-cta-sec) .elementor-button-icon { display: none; }

/* foto: 680 x 900 (individual) / 680 x 840 (pareja), esquinas de 8 u y degradado inferior (315 u) hasta el beige de la página */
.mt-page-proceso .elementor .mt-process-photo.mt-process-photo { position: relative; flex: none; width: calc(680 * var(--up)); padding: 0; margin: 0; border-radius: calc(8 * var(--up)); overflow: hidden; min-height: 0; }
.mt-page-proceso .elementor .mt-process-individual .mt-process-photo { height: calc(900 * var(--up)); }
.mt-page-proceso .elementor .mt-process-couple .mt-process-photo { height: calc(840 * var(--up)); }
.mt-page-proceso .elementor .mt-process-photo > .e-con { width: 100%; height: 100%; min-height: 0; padding: 0; margin: 0; position: static; }
.mt-page-proceso .elementor .mt-process-photo > .e-con > .e-con:first-child { width: 100%; height: 100%; min-height: 0; margin: 0; padding: 0; background-size: cover; background-position: center center; border-radius: 0; }
.mt-page-proceso .elementor .mt-process-photo .content-bg-blur { display: none; }
.mt-page-proceso .elementor .mt-process-photo::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: calc(315 * var(--up)); pointer-events: none; background: linear-gradient(180deg, rgba(245, 245, 240, 0), rgba(245, 245, 240, .9)); }
.mt-page-proceso .elementor .mt-process-isotype { position: absolute; z-index: 2; left: calc(48 * var(--up)); top: calc(54 * var(--up)); width: calc(81 * var(--up)); margin: 0; }
.mt-page-proceso .elementor .mt-process-isotype img { display: block; width: 100%; height: auto; }

/* ---------- 4 · modalidades ---------- */
.mt-page-proceso .elementor .mt-process-modes.mt-process-modes { flex-direction: column; align-items: center; justify-content: flex-start; padding: calc(120 * var(--up)) calc(160 * var(--up)); background: var(--beige); }
.mt-page-proceso .elementor .mt-process-modes > .e-con {
	box-sizing: border-box; display: flex; flex-direction: column; align-items: center; gap: calc(64 * var(--up)); width: calc(1600 * var(--up)); max-width: 100%; margin: 0; padding: calc(80 * var(--up)) calc(80 * var(--up)) calc(96 * var(--up));
	background: #fff; border-radius: calc(8 * var(--up)); --gap: calc(64 * var(--up)); min-height: 0;
}
.mt-page-proceso .elementor .mt-process-mode-icon .elementor-icon { width: calc(48 * var(--up)); height: calc(48 * var(--up)); display: flex; align-items: center; justify-content: center; font-size: calc(29 * var(--up)); line-height: 1; color: var(--brown); }
.mt-page-proceso .elementor .mt-process-mode-icon .elementor-icon i { font-size: calc(29 * var(--up)); transform: translateY(calc(2 * var(--up))); }
.mt-page-proceso .elementor .mt-process-mode-icon .elementor-icon svg { width: calc(29 * var(--up)); height: calc(29 * var(--up)); }
.mt-page-proceso .elementor .mt-process-modes-title { margin: 0; }
.mt-page-proceso .elementor .mt-process-modes-title .elementor-heading-title { font-size: calc(64 * var(--up)); line-height: calc(72 * var(--up)); text-align: center; }
.mt-page-proceso .elementor .mt-process-mode-row.mt-process-mode-row { display: flex; flex-direction: row; align-items: stretch; gap: calc(48 * var(--up)); width: calc(1440 * var(--up)); max-width: 100%; margin: 0; padding: 0; --gap: calc(48 * var(--up)); --column-gap: calc(48 * var(--up)); min-height: 0; }
.mt-page-proceso .elementor .mt-process-mode.mt-process-mode { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; flex: 1 1 0; gap: calc(16 * var(--up)); width: auto; margin: 0; padding: 0; --gap: calc(16 * var(--up)); min-height: 0; text-align: center; }
.mt-page-proceso .elementor .mt-process-mode-sep.mt-process-mode-sep { flex: none; width: 1px; min-width: 1px; padding: 0; margin: 0; background: var(--line); min-height: 0; }
.mt-page-proceso .elementor .mt-process-mode-title .elementor-heading-title { font-size: calc(32 * var(--up)); line-height: calc(38 * var(--up)); text-align: center; }
.mt-page-proceso .elementor .mt-process-mode-text p { font-family: 'Manrope', sans-serif; font-weight: 500; font-size: calc(18 * var(--up)); line-height: calc(27 * var(--up)); text-align: center; color: var(--brown); margin: 0; }
.mt-page-proceso .elementor .mt-process-mode-icon, .mt-page-proceso .elementor .mt-process-mode-title, .mt-page-proceso .elementor .mt-process-mode-text { margin: 0; }

/* ---------- 5 · ¿Cómo empiezo mi proceso? ---------- */
.mt-page-proceso .elementor .mt-process-steps.mt-process-steps { flex-direction: column; align-items: center; gap: calc(80 * var(--up)); padding: calc(160 * var(--up)); background: linear-gradient(180deg, var(--beige), #fff 50%, var(--beige)); --gap: calc(80 * var(--up)); }
.mt-page-proceso .elementor .mt-process-steps-title { margin: 0; }
.mt-page-proceso .elementor .mt-process-steps-title .elementor-heading-title { text-align: center; }
.mt-page-proceso .elementor .mt-process-steps-row.mt-process-steps-row { display: flex; flex-direction: row; align-items: stretch; gap: calc(24 * var(--up)); width: calc(1600 * var(--up)); max-width: 100%; margin: 0; padding: 0; --gap: calc(24 * var(--up)); --column-gap: calc(24 * var(--up)); min-height: 0; }
.mt-page-proceso .elementor .mt-process-step.mt-process-step { box-sizing: border-box; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; flex: 1 1 0; gap: calc(40 * var(--up)); width: auto; margin: 0; padding: calc(32 * var(--up)); background: #fff; border: 0; border-radius: calc(4 * var(--up)); box-shadow: none; --gap: calc(40 * var(--up)); min-height: 0; }
.mt-page-proceso .elementor .mt-process-step-icon { width: calc(43 * var(--up)); margin: 0; }
.mt-page-proceso .elementor .mt-process-step-icon img { display: block; width: 100%; height: auto; }
.mt-page-proceso .elementor .mt-process-step > .e-con { display: flex; flex-direction: column; gap: calc(12 * var(--up)); width: 100%; margin: 0; padding: 0; --gap: calc(12 * var(--up)); min-height: 0; }
.mt-page-proceso .elementor .mt-process-step-title .elementor-heading-title { font-size: calc(32 * var(--up)); line-height: calc(38 * var(--up)); text-align: left; }
.mt-page-proceso .elementor .mt-process-step-text p { font-family: 'Manrope', sans-serif; font-weight: 500; font-size: calc(18 * var(--up)); line-height: calc(27 * var(--up)); color: var(--brown); margin: 0; }
.mt-page-proceso .elementor .mt-process-step-title, .mt-page-proceso .elementor .mt-process-step-text { margin: 0; }

/* ---------- 6 · cierre ---------- */
.mt-page-proceso .elementor .mt-process-start.mt-process-start { flex-direction: column; align-items: center; gap: calc(40 * var(--up)); padding: calc(160 * var(--up)) calc(160 * var(--up)) calc(200 * var(--up)); background: linear-gradient(180deg, var(--beige), #fff 50%, var(--beige)); --gap: calc(40 * var(--up)); }
.mt-page-proceso .elementor .mt-process-start-title { width: calc(1300 * var(--up)); max-width: 100%; margin: 0; }
.mt-page-proceso .elementor .mt-process-start-title .elementor-heading-title { text-align: center; }
.mt-page-proceso .elementor .mt-process-start-text { width: calc(900 * var(--up)); max-width: 100%; margin: 0; }
.mt-page-proceso .elementor .mt-process-start-text p { font-family: 'Manrope', sans-serif; font-weight: 500; font-size: calc(24 * var(--up)); line-height: calc(34 * var(--up)); text-align: center; color: var(--brown); margin: 0; }
.mt-page-proceso .elementor .mt-process-start-buttons.mt-process-start-buttons { display: flex; flex-direction: row; justify-content: center; align-items: center; gap: calc(16 * var(--up)); width: auto; margin: 0; padding: 0; --gap: calc(16 * var(--up)); min-height: 0; }

/* en el diseño «Separaciones y toma de decisiones» cabe en una línea (su caja es de 324 u en una columna de 330): se deja sin partir */
.mt-page-proceso .elementor .mt-process-couple .mt-process-list .elementor-widget-icon-list:last-child .elementor-icon-list-item:last-child .elementor-icon-list-text { white-space: nowrap; }

/* ============ TABLET Y MÓVIL (hasta 1024 px): sin diseño en Figma, adaptación apilada ============
   Las medidas pasan a px (--up = 1px); los títulos de 96 u se reducen con clamp(). En pantalla la foto va antes del texto (orden que ya traía el componente de Balancia). */
@media (max-width: 1024px) {
	.mt-page-proceso { --up: 1px; }
	.mt-page-proceso .elementor :is(.mt-process-title, .mt-process-modes-title, .mt-process-steps-title, .mt-process-start-title, .mt-process-h1) .elementor-heading-title { font-size: clamp(38px, 9vw, 64px); line-height: 1.08; }
	.mt-page-proceso .elementor .mt-process-modes-title .elementor-heading-title { font-size: clamp(30px, 6.4vw, 48px); line-height: 1.15; }

	.mt-page-proceso .elementor .mt-process-hero.mt-process-hero { gap: 16px; padding: 120px 24px 88px; } /* tablet: igual que Sobre mí y Mi enfoque (120 arriba; 88 abajo + 32 de la sección siguiente = 120 hasta el contenido); el móvil usa 104 */
	/* El degradado del body mide 726 px, pero en tablet y móvil la cabecera es más baja: cortaba en seco contra el blanco de la sección siguiente. La propia cabecera se funde a blanco por abajo, tenga la altura que tenga (::after: el ::before lo usa Elementor). */
	.mt-page-proceso .elementor .mt-process-hero.mt-process-hero { position: relative; }
	.mt-page-proceso .elementor .mt-process-hero.mt-process-hero > * { position: relative; z-index: 1; }
	.mt-page-proceso .elementor .mt-process-hero.mt-process-hero::after { content: ''; position: absolute; z-index: 0; left: 0; right: 0; bottom: 0; height: min(280px, 100%); pointer-events: none; background: linear-gradient(180deg, rgba(255, 255, 255, 0), #fff 92%); }
	.mt-page-proceso .elementor .mt-process-kicker .elementor-heading-title { font-size: clamp(13px, 2.6vw, 18px); line-height: 1.5; letter-spacing: .28em; padding-left: .28em; }
	.mt-page-proceso .elementor .mt-process-intro { width: 100%; max-width: 680px !important; /* Elementor da a los widgets de un contenedor flex un max-width propio que ganaba */ }
	.mt-page-proceso .elementor .mt-process-intro p { font-size: clamp(15px, 2.4vw, 18px); line-height: 1.6; margin-bottom: 10px; }

	.mt-page-proceso .elementor .mt-process-individual.mt-process-individual { padding: 32px 24px 64px; }
	.mt-page-proceso .elementor .mt-process-couple.mt-process-couple { padding: 64px 24px; }
	.mt-page-proceso .elementor :is(.mt-process-individual, .mt-process-couple) > .e-con, .mt-page-proceso .elementor .mt-process-couple > .e-con { flex-direction: column; align-items: center; justify-content: flex-start; gap: 40px; --gap: 40px; max-width: 680px; }
	.mt-page-proceso .elementor :is(.mt-process-individual, .mt-process-couple) .mt-process-col { width: 100%; }
	.mt-page-proceso .elementor .mt-process-title, .mt-page-proceso .elementor .mt-process-couple .mt-process-title { margin-bottom: 16px; }
	.mt-page-proceso .elementor .mt-process-kicker-sm, .mt-page-proceso .elementor .mt-process-kicker-sm .elementor-heading-title, .mt-page-proceso .elementor .mt-process-couple .mt-process-kicker-sm .elementor-heading-title { max-width: none; }
	.mt-page-proceso .elementor .mt-process-kicker-sm .elementor-heading-title { font-size: 13px; line-height: 20px; margin-bottom: 0; }
	.mt-page-proceso .elementor .mt-process-kicker-sm { margin-bottom: 24px; }
	.mt-page-proceso .elementor .mt-process-text { margin-bottom: 24px; }
	.mt-page-proceso .elementor .mt-process-text p, .mt-page-proceso .elementor .mt-process-couple .mt-process-text p { font-size: 17px; line-height: 1.65; margin-bottom: 16px; }
	.mt-page-proceso .elementor .mt-process-listtitle { margin-bottom: 20px; }
	.mt-page-proceso .elementor .mt-process-listtitle .elementor-heading-title { font-size: 26px; line-height: 1.25; }
	.mt-page-proceso .elementor .mt-process-list.mt-process-list { flex-direction: column; gap: 12px; --gap: 12px; margin-bottom: 28px; width: 100%; }
	.mt-page-proceso .elementor .mt-process-list .elementor-widget-icon-list, .mt-page-proceso .elementor .mt-process-couple .mt-process-list .elementor-widget-icon-list { width: 100%; }
	.mt-page-proceso .elementor .mt-process-list .elementor-icon-list-items { gap: 12px; }
	.mt-page-proceso .elementor .mt-process-list .elementor-icon-list-icon { height: 28px; }
	.mt-page-proceso .elementor .mt-process-list .elementor-icon-list-text { font-size: 17px; line-height: 28px; }
	.mt-page-proceso .elementor .mt-process-couple .mt-process-list .elementor-icon-list-text { white-space: normal !important; }
	.mt-page-proceso .elementor .mt-process-buttons.mt-process-buttons { flex-wrap: wrap; gap: 16px; --gap: 16px; }
	.mt-page-proceso .elementor .mt-process-photo.mt-process-photo { width: 100%; max-width: 560px; height: auto; aspect-ratio: 680 / 900; border-radius: 8px; }
	.mt-page-proceso .elementor .mt-process-couple .mt-process-photo { aspect-ratio: 680 / 840; }
	.mt-page-proceso .elementor .mt-process-photo::after { height: 35%; }
	.mt-page-proceso .elementor .mt-process-isotype { left: 24px; top: 28px; width: 56px; }

	.mt-page-proceso .elementor .mt-process-modes.mt-process-modes { padding: 56px 24px; }
	.mt-page-proceso .elementor .mt-process-modes > .e-con { gap: 40px; --gap: 40px; padding: 48px 28px; }
	.mt-page-proceso .elementor .mt-process-mode-row.mt-process-mode-row { flex-direction: column; gap: 32px; --gap: 32px; width: 100%; }
	.mt-page-proceso .elementor .mt-process-mode.mt-process-mode { flex: none; width: 100%; }
	.mt-page-proceso .elementor .mt-process-mode-sep.mt-process-mode-sep { width: 100%; height: 1px; min-height: 1px; align-self: stretch; }
	.mt-page-proceso .elementor .mt-process-mode-title .elementor-heading-title { font-size: 28px; line-height: 1.25; }
	.mt-page-proceso .elementor .mt-process-mode-text p { font-size: 17px; line-height: 1.6; }

	.mt-page-proceso .elementor .mt-process-steps.mt-process-steps { gap: 40px; --gap: 40px; padding: 64px 24px; }
	.mt-page-proceso .elementor .mt-process-steps-row.mt-process-steps-row { flex-direction: column; gap: 16px; --gap: 16px; width: 100%; max-width: 680px; }
	.mt-page-proceso .elementor .mt-process-step.mt-process-step { flex: none; width: 100%; gap: 24px; --gap: 24px; padding: 28px; }
	.mt-page-proceso .elementor .mt-process-step-title .elementor-heading-title { font-size: 28px; line-height: 1.25; }
	.mt-page-proceso .elementor .mt-process-step-text p { font-size: 17px; line-height: 1.6; }

	.mt-page-proceso .elementor .mt-process-start.mt-process-start { gap: 28px; --gap: 28px; padding: 64px 24px 80px; }
	.mt-page-proceso .elementor .mt-process-start-text p { font-size: 18px; line-height: 1.6; }
}
@media (max-width: 767px) {
	.mt-page-proceso .elementor .mt-process-hero.mt-process-hero { padding: 104px 20px 72px; } /* móvil: 104 px de aire entre el navbar y el título y entre el subtítulo y la sección de abajo (esta le suma su propio padding superior) */
	.mt-page-proceso .elementor .mt-process-h1 .elementor-heading-title { font-size: clamp(44px, 9vw, 64px); } /* título de la cabecera en móvil: mínimo 44 px (antes 36-38) y sigue creciendo con el ancho */
	.mt-page-proceso .elementor .mt-process-individual.mt-process-individual, .mt-page-proceso .elementor .mt-process-couple.mt-process-couple { padding-left: 32px; padding-right: 32px; }
	.mt-page-proceso .elementor .mt-process-modes.mt-process-modes, .mt-page-proceso .elementor .mt-process-steps.mt-process-steps, .mt-page-proceso .elementor .mt-process-start.mt-process-start { padding-left: 20px; padding-right: 20px; }
	.mt-page-proceso .elementor .mt-process-modes > .e-con { padding: 36px 20px; }
	.mt-page-proceso .elementor .mt-process-text p, .mt-page-proceso .elementor .mt-process-couple .mt-process-text p, .mt-page-proceso .elementor .mt-process-list .elementor-icon-list-text, .mt-page-proceso .elementor .mt-process-mode-text p, .mt-page-proceso .elementor .mt-process-step-text p { font-size: 16px; }
	.mt-page-proceso .elementor .mt-process-start-text p { font-size: 16px; }
}


/* ============ INDIVIDUAL Y PAREJA en tablet y móvil (hasta 1024 px) · rediseño 2026-11-12 ============
   Sustituye al apilado lineal de arriba (texto, lista larga de 8 ítems y la foto al final):
   · toda la franja (tablet vertical, horizontal y móvil): foto centrada con arco arriba, el título solapa su parte baja, todo centrado debajo, lista en dos columnas
   Las fotos ya no son «sticky» en tablet (ajuste heredado de Balancia en Elementor: al hacer scroll la foto se pegaba y tapaba el título). */
@media (max-width: 1024px) {
	/* base de la rejilla (queda anulada por el bloque «foto centrada» de más abajo, que vale hasta 1024 px) */
	.mt-page-proceso.mt-page-proceso .elementor :is(.mt-process-individual, .mt-process-couple) > .e-con { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; gap: 48px; max-width: 920px; }
	.mt-page-proceso.mt-page-proceso .elementor :is(.mt-process-individual, .mt-process-couple) .mt-process-col.mt-process-col { width: 100%; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-couple .mt-process-photo { order: -1; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-photo.mt-process-photo { width: 100%; height: auto; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-individual .mt-process-photo.mt-process-photo { aspect-ratio: 680 / 900; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-couple .mt-process-photo.mt-process-photo { aspect-ratio: 680 / 840; }
	.mt-page-proceso.mt-page-proceso .elementor :is(.mt-process-title) .elementor-heading-title { font-size: clamp(38px, 4.6vw, 48px); }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-text p, .mt-page-proceso.mt-page-proceso .elementor .mt-process-couple .mt-process-text p { font-size: 16px; line-height: 1.65; margin-bottom: 16px; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-listtitle .elementor-heading-title { font-size: 26px; line-height: 1.2; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-listtitle { margin-bottom: 20px; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-list .elementor-icon-list-text { font-size: 15px; line-height: 1.4; }
}

/* tablet y móvil (hasta 1024): foto centrada arriba con arco, el título solapa su parte baja; todo centrado */
@media (max-width: 1024px) {
	.mt-page-proceso.mt-page-proceso .elementor :is(.mt-process-individual, .mt-process-couple) > .e-con { display: flex; flex-direction: column-reverse; align-items: center; gap: 0; max-width: 560px; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-photo.mt-process-photo { width: 82%; aspect-ratio: 4 / 5 !important; border-radius: 999px 999px 8px 8px; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-photo::after { height: 45%; background: linear-gradient(180deg, rgba(245, 245, 240, 0), rgba(245, 245, 240, .96) 85%, #F5F5F0); }
	.mt-page-proceso.mt-page-proceso .elementor :is(.mt-process-individual, .mt-process-couple) .mt-process-photo.mt-process-photo { order: 0 !important; } /* en móvil Elementor pone la foto de Terapia individual con order -99999 (heredado de Balancia) y, con column-reverse, quedaba la última */
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-photo .mt-process-isotype { left: 50%; top: 13%; transform: translateX(-50%); width: 56px; }
	.mt-page-proceso.mt-page-proceso .elementor :is(.mt-process-individual, .mt-process-couple) .mt-process-col.mt-process-col { position: relative; z-index: 3; margin-top: -84px; align-items: center; text-align: center; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-title .elementor-heading-title { font-size: clamp(38px, 8.6vw, 52px); text-align: center; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-kicker-sm { max-width: none; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-kicker-sm .elementor-heading-title { max-width: none; text-align: center; font-size: 12px; padding-left: .35em; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-text p { text-align: left; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-listtitle .elementor-heading-title { text-align: center; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-buttons { align-self: center; }
}

/* ---- lista en dos columnas (columnas rellenadas de arriba abajo; en móviles estrechos, una) ---- */
@media (max-width: 1024px) {
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-list.mt-process-list { display: grid; grid-auto-flow: column; grid-template-columns: repeat(2, auto); justify-content: start; column-gap: 32px; row-gap: 12px; --gap: 12px; width: 100%; margin-bottom: 28px; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-individual .mt-process-list.mt-process-list { grid-template-rows: repeat(4, auto); }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-couple .mt-process-list.mt-process-list { grid-template-rows: repeat(3, auto); }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-list :is(.elementor-widget-icon-list, .elementor-widget-container, .elementor-icon-list-items) { display: contents; }
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-list .elementor-icon-list-item { text-align: left; }
}
@media (max-width: 1024px) { .mt-page-proceso.mt-page-proceso .elementor .mt-process-list.mt-process-list { justify-content: center; } }
@media (max-width: 480px) {
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-list.mt-process-list { grid-auto-flow: row; grid-template-columns: 1fr; grid-template-rows: none !important; justify-content: stretch; }
}

/* «Elige la forma que mejor encaje contigo» en tablet horizontal (900-1024 px): las tres modalidades en fila con las líneas verticales entre ellas, como en PC (en tablet vertical y móvil siguen apiladas). */
@media (min-width: 900px) and (max-width: 1024px) {
	.mt-page-proceso .elementor .mt-process-mode-row.mt-process-mode-row { flex-direction: row; gap: 28px; --gap: 28px; --column-gap: 28px; width: 100%; }
	.mt-page-proceso .elementor .mt-process-mode.mt-process-mode { flex: 1 1 0; width: auto; min-width: 0; }
	.mt-page-proceso .elementor .mt-process-mode-sep.mt-process-mode-sep { width: 1px; height: auto; min-height: 1px; align-self: stretch; }
	.mt-page-proceso .elementor .mt-process-modes > .e-con { padding: 48px 28px; }
	.mt-page-proceso .elementor .mt-process-mode-title .elementor-heading-title { font-size: 24px; line-height: 1.25; }
	.mt-page-proceso .elementor .mt-process-mode-text p { font-size: 15px; line-height: 1.55; }
}

/* «No necesitas saber exactamente por dónde empezar» en tablet horizontal (900-1024 px): el título no llega a los bordes (ancho máximo propio; !important porque Elementor da su propio max-width a los widgets). */
@media (min-width: 900px) and (max-width: 1024px) {
	.mt-page-proceso .elementor .mt-process-start-title { width: 100%; max-width: 760px !important; }
	.mt-page-proceso .elementor .mt-process-start-title .elementor-heading-title { font-size: 56px; text-wrap: balance; }
}

/* «¿Cómo empiezo mi proceso?» en tablet horizontal (900-1024 px): las tres tarjetas en fila, como en PC (en tablet vertical y móvil siguen apiladas). */
@media (min-width: 900px) and (max-width: 1024px) {
	.mt-page-proceso .elementor .mt-process-steps-row.mt-process-steps-row { flex-direction: row; gap: 20px; --gap: 20px; --column-gap: 20px; width: 100%; max-width: 100%; }
	.mt-page-proceso .elementor .mt-process-step.mt-process-step { flex: 1 1 0; width: auto; min-width: 0; gap: 20px; --gap: 20px; padding: 24px; }
	.mt-page-proceso .elementor .mt-process-step-title .elementor-heading-title { font-size: 24px; line-height: 1.25; }
	.mt-page-proceso .elementor .mt-process-step-text p { font-size: 15px; line-height: 1.55; }
}

/* Tablet vertical (768-899 px): «Elige la forma…» y «¿Cómo empiezo mi proceso?» más estrechas y centradas (en vez de ocupar todo el ancho). max-width con !important: Elementor da su propio max-width a estos contenedores. */
@media (min-width: 768px) and (max-width: 899px) {
	.mt-page-proceso .elementor .mt-process-modes > .e-con { width: 100%; max-width: 560px !important; }
	.mt-page-proceso .elementor .mt-process-steps-row.mt-process-steps-row { max-width: 560px !important; }
}

/* Móvil (hasta 767 px): las fotos con arco de Terapia individual / pareja ocupan todo el ancho útil (antes el 82 %). */
@media (max-width: 767px) {
	.mt-page-proceso.mt-page-proceso .elementor .mt-process-photo.mt-process-photo { width: 100%; }
	.mt-page-proceso.mt-page-proceso .elementor :is(.mt-process-individual, .mt-process-couple) .mt-process-col.mt-process-col { margin-top: -96px; }
}
