/* =========================================================
   He Visto un Fantasma — Cuéntame tu experiencia (page-cuentame-tu-experiencia.php y shortcode del formulario). Se carga solo ahí.
   Depende de app.css (tokens y base). Las reglas conservan el orden relativo
   que tenían en el CSS monolítico.
   ========================================================= */

/* ---------- Cuéntame tu experiencia: cabecera editorial ---------- */

/* Composición compacta: cabecera, frase y arranque del formulario caben juntos en la
   primera pantalla de escritorio. */

.hvuf-experiencia__cabecera {
	display: grid;
	gap: var(--space-4) var(--space-5);
	align-items: start;
	padding-block: var(--space-4) var(--space-3);
}

.hvuf-experiencia__cabecera .hvuf-eyebrow {
	margin-bottom: var(--space-1);
}

.hvuf-experiencia__cabecera .hvuf-page__title {
	margin-bottom: var(--space-2);
	font-size: clamp(1.9rem, 1.3rem + 1.9vw, 2.5rem);
	line-height: 1.15;
}

.hvuf-experiencia__intro {
	margin-top: var(--space-2);
	color: var(--color-text-muted);
	font-size: 0.95rem;
	line-height: 1.5;
}

.hvuf-experiencia__intro p {
	margin-bottom: var(--space-3);
}

.hvuf-experiencia__intro p:last-child {
	margin-bottom: 0;
}

/* Información sobre privacidad y funcionamiento (clase opcional del párrafo). */

.hvuf-experiencia__intro .hvuf-nota {
	padding-left: var(--space-3);
	border-left: 2px solid var(--color-accent-strong);
	color: var(--color-text);
	font-size: 0.95rem;
}

/* Frase final (clase opcional del párrafo). */

.hvuf-experiencia__intro .hvuf-cierre {
	font-family: var(--font-serif);
	font-size: 1.05rem;
	font-style: italic;
	color: var(--color-text);
}

.hvuf-experiencia__media {
	position: relative;
	margin: 0;
	min-height: 0;
	overflow: hidden;
	border: 1px solid var(--color-border);
	/* Punto de interés del recorte (object-position). Ajustable en un solo sitio. */
	--hvuf-exp-foco: 90% 60%;
}

.hvuf-experiencia__imagen {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: var(--hvuf-exp-foco);
}

@media (min-width: 860px) {
	/* Con imagen: texto 60 % · foto 40 %, con poco hueco entre ambos (una sola composición).
	   La foto rellena la altura del bloque de texto (termina junto al cierre editorial). */
	.hvuf-experiencia__cabecera--con-imagen {
		grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
		align-items: stretch;
	}

	.hvuf-experiencia__intro {
		font-size: 1rem;
		line-height: 1.55;
	}

	.hvuf-experiencia__media {
		align-self: stretch;
		aspect-ratio: auto;
		min-height: 240px;
	}
}

@media (max-width: 859px) {
	/* Tablet estrecha y móvil: una columna, texto primero y foto apaisada y baja. */
	.hvuf-experiencia__media {
		aspect-ratio: auto;
		height: clamp(130px, 26vw, 200px);
	}
}

/* Frase destacada: puente compacto hacia el formulario, sin caja ni fondo. */

.hvuf-experiencia__frase-caja {
	padding-block: var(--space-3) var(--space-4);
	text-align: center;
}

.hvuf-experiencia__frase {
	max-width: 30ch;
	margin: 0 auto;
	font-family: var(--font-serif);
	font-size: clamp(1.25rem, 1rem + 1.1vw, 1.75rem);
	line-height: 1.3;
	color: var(--color-text);
	text-wrap: balance;
}

/* Pequeño detalle azul discreto sobre la frase. */

.hvuf-experiencia__frase::before {
	content: "";
	display: block;
	width: 2rem;
	height: 1px;
	margin: 0 auto var(--space-2);
	background: var(--color-accent-strong);
}

.hvuf-experiencia__formulario {
	padding-block: var(--space-4) var(--space-7);
	border-top: 1px solid var(--color-border);
}

/* El formulario ocupa el mismo ancho exterior que la composición superior: su borde izquierdo
   coincide con el del texto y el derecho con el de la foto. Solo en esta página (el plugin fija
   max-width y un sangrado izquierdo para el resto de usos del shortcode). */

.hvuf-experiencia__formulario .hvuf-testimonio-page {
	max-width: none;
	margin-inline: 0;
	padding-left: 0;
}

.hvuf-experiencia__formulario .hvuf-testimonio-page::before {
	left: -0.9rem;
}

/* Arranque del formulario más arriba: menos separación interna solo en esta página. */

.hvuf-experiencia__formulario .hvuf-testimonio-form {
	gap: 1.25rem;
}

.hvuf-experiencia__formulario .hvuf-step {
	padding-top: 1.25rem;
}

.hvuf-experiencia__formulario .hvuf-step__legend {
	margin-bottom: 1rem;
}

.hvuf-experiencia__formulario .hvuf-step-progress {
	margin-bottom: 0;
}

.hvuf-experiencia__formulario .hvuf-step-progress__count {
	margin-bottom: 0.35rem;
}

.hvuf-experiencia__formulario .hvuf-step-progress__track {
	margin-bottom: 0.6rem;
}

.hvuf-experiencia__despues {
	padding-bottom: var(--space-7);
}

@media (max-width: 480px) {
	.hvuf-experiencia__cabecera {
		padding-block: var(--space-3) var(--space-2);
	}

	.hvuf-experiencia__intro {
		font-size: 0.92rem;
		line-height: 1.45;
	}

	.hvuf-experiencia__intro .hvuf-nota {
		font-size: 0.9rem;
	}

	.hvuf-experiencia__media {
		height: 120px;
	}

	.hvuf-experiencia__formulario {
		padding-top: var(--space-3);
	}
}
