@charset "UTF-8";
/* TFLC · Página del espectáculo Raíces (requiere landing.css) */

/* ---------- Cabecera ---------- */
.lc-raices__intro { display: flex; align-items: flex-end; gap: 72px; padding-top: 0; padding-bottom: 0; padding-right: 0; }
.lc-raices__intro-text { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; padding: 80px 0; align-self: center; }
.lc-raices__title { font-family: var(--lc-serif); font-weight: 400; font-size: 62px; line-height: 1.08; color: var(--lc-blanco); }
.lc-raices__lead { font-size: 18px; line-height: 1.6; opacity: .92; }
.lc-raices__ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; }
.lc .lc-raices__ver-video, .lc .lc-raices__ver-video:visited { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; font-size: 15px; line-height: normal; color: var(--lc-blanco); }
.lc-raices__ver-video span { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--lc-blanco); transition: transform .2s; }
.lc-raices__ver-video span img { margin-left: 2px; }
.lc-raices__ver-video:hover span, .lc-raices__ver-video:focus span { transform: scale(1.08); }
.lc-raices__datos { display: flex; flex-wrap: wrap; gap: 16px 40px; margin: 0; padding-top: 12px; }
.lc-raices__datos > div { display: flex; flex-direction: column; gap: 2px; }
.lc-raices__datos dt { font-family: var(--lc-serif); font-weight: 400; font-size: 24px; line-height: normal; white-space: nowrap; }
.lc-raices__datos dd { margin: 0; font-size: 13px; line-height: normal; opacity: .75; }
.lc-raices__intro-foto { flex: none; width: 673px; }
.lc-raices__intro-foto img { display: block; width: 100%; height: auto; }
/* Carga: mismas animaciones que el hero de la home (keyframes en landing.css) */
.lc-raices__intro-text > * { animation: lc-fade-up .9s cubic-bezier(.2, .8, .2, 1) both; }
.lc-raices__intro-text > :nth-child(1) { animation-delay: .25s; }
.lc-raices__intro-text > :nth-child(2) { animation-delay: .35s; }
.lc-raices__intro-text > :nth-child(3) { animation-delay: .45s; }
.lc-raices__intro-text > :nth-child(4) { animation-delay: .55s; }
.lc-raices__intro-text > :nth-child(5) { animation-delay: .65s; }
.lc-raices__intro-foto { animation: lc-media-in 1.2s cubic-bezier(.2, .8, .2, 1) .2s both; }
@media (prefers-reduced-motion: reduce) {
	.lc-raices__intro-text > *, .lc-raices__intro-foto { animation: none; }
}

/* ---------- Qué es Raíces ---------- */
.lc-raices__que { display: grid; grid-template-columns: minmax(0, 1fr) 520px; align-items: center; gap: 80px; }
.lc-raices__que-text { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; }
.lc-raices__que-text .lc-h2 { font-size: 44px; line-height: 1.14; }
.lc-raices__que-text > p:not([class]) { font-size: 17px; line-height: 1.65; opacity: .85; }
.lc-raices__que-foto { display: block; width: 100%; height: 420px; object-fit: cover; }
.lc .lc-raices__link, .lc .lc-raices__link:visited { flex: none; font-weight: 600; font-size: 15px; line-height: normal; color: var(--lc-rojo); text-decoration: underline; }
.lc .lc-raices__link:hover, .lc .lc-raices__link:focus { color: var(--lc-oscuro); }

/* ---------- Bloques con encabezado + contenido ---------- */
.lc-raices__bloque { display: flex; flex-direction: column; gap: 48px; }
.lc-raices__head { display: flex; align-items: flex-end; gap: 80px; }
.lc-raices__head > .lc-sec__head { flex: 1; min-width: 0; }
.lc-raices__head-text { font-size: 17px; line-height: 1.6; opacity: .8; }

/* ---------- Los 60 minutos ---------- */
.lc-raices__momentos { margin: 0; padding: 0; list-style: none; }
.lc-raices__momento { display: flex; align-items: flex-start; gap: 32px; padding: 32px 0; border-bottom: 1px solid var(--lc-crema); }
.lc-raices__num { flex: none; width: 96px; font-family: var(--lc-serif); font-size: 40px; line-height: normal; color: var(--lc-rojo); }
.lc-raices__num--doble { font-size: 28px; }
.lc-raices__momento > img { flex: none; display: block; width: 220px; height: 160px; object-fit: cover; }
.lc-raices__momento > div { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.lc-raices__momento h3 { margin: 0; font-family: var(--lc-serif); font-weight: 400; font-size: 26px; line-height: 1.2; }
.lc-raices__momento > div > p:not([class]) { font-size: 15px; line-height: 1.6; opacity: .8; }
.lc-raices__palos { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.lc-raices__palos li { padding: 6px 14px; border-radius: 999px; background: var(--lc-fondo); font-weight: 500; font-size: 14px; line-height: normal; }
.lc-raices__nota { font-family: var(--lc-serif); font-style: italic; font-size: 16px; line-height: normal; color: var(--lc-rojo); }

/* ---------- Glosario ---------- */
.lc-raices__bloque:has(.lc-raices__glosario) { gap: 40px; }
.lc-raices__glosario { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0; }
.lc-raices__glosario > div { display: flex; flex-direction: column; gap: 8px; padding: 28px; background: var(--lc-blanco); }
.lc-raices__glosario dt { font-family: var(--lc-serif); font-weight: 400; font-size: 24px; line-height: normal; }
.lc-raices__glosario dd { margin: 0; font-size: 15px; line-height: 1.6; opacity: .8; }

/* ---------- Vídeo ---------- */
.lc-raices__video { height: 720px; background: #000; }
.lc-raices__video .lc-video { border-radius: 0; }
.lc-raices__video .lc-video__poster { object-fit: cover; opacity: .85; }
.lc-raices__video .lc-video__play { width: 96px; height: 96px; border-radius: 50%; }
.lc-raices__video .lc-video__play img { margin-left: 6px; }

/* ---------- Preguntas frecuentes ---------- */
.lc-raices__faq { grid-template-columns: 380px minmax(0, 1fr); gap: 72px; }
.lc-raices__faq .lc-h2 { font-size: 40px; line-height: 1.15; }

@media (max-width: 1279px) {
	.lc-raices__intro { gap: 48px; }
	.lc-raices__intro-foto { width: 45%; }
	.lc-raices__title { font-size: 48px; }
	.lc-raices__que { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 48px; }
	.lc-raices__head { gap: 48px; }
	.lc-raices__faq { grid-template-columns: 300px minmax(0, 1fr); gap: 48px; }
}

@media (max-width: 991px) {
	.lc-raices__intro { flex-direction: column; align-items: stretch; gap: 0; padding-right: var(--lc-gutter); }
	.lc-raices__intro-text { padding: 32px 0 8px; gap: 18px; }
	.lc-raices__title { font-size: 40px; }
	.lc-raices__lead { font-size: 16px; }
	.lc-raices__datos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 24px; }
	.lc-raices__datos dt { font-size: 20px; white-space: normal; }
	.lc-raices__intro-foto { width: 100%; max-width: 480px; margin: 0 auto; }

	.lc-raices__que { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.lc-raices__que-text .lc-h2 { font-size: 32px; }
	.lc-raices__que-text > p:not([class]) { font-size: 16px; }
	.lc-raices__que-foto { height: auto; aspect-ratio: 520 / 420; }

	.lc-raices__bloque { gap: 32px; }
	.lc-raices__head { flex-direction: column; align-items: flex-start; gap: 20px; }
	.lc-raices__head-text { font-size: 16px; }

	.lc-raices__momento { flex-wrap: wrap; gap: 16px; padding: 24px 0; }
	.lc-raices__num { width: auto; font-size: 32px; }
	.lc-raices__num--doble { font-size: 24px; }
	.lc-raices__momento > img { order: -1; width: 100%; height: auto; aspect-ratio: 220 / 160; }
	.lc-raices__momento > div { flex-basis: 100%; }
	.lc-raices__momento h3 { font-size: 22px; }

	.lc-raices__glosario { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.lc-raices__glosario > div { padding: 24px; }

	.lc-raices__video { height: auto; aspect-ratio: 4 / 3; }
	.lc-raices__video .lc-video__play { width: 72px; height: 72px; }

	.lc-raices__faq { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.lc-raices__faq .lc-h2 { font-size: 32px; }
}
