.ficha-tratamiento {

	--ficha-linea: rgba(45, 71, 46, .24);

	--ajuste-serif-titulos: 1.2em;

	background: var(--crema);

	overflow: clip;

}



/* Caso clínico editorial · Rehabilitación oral */

.ficha-caso-clinico {

	background: #f9ebd3;

	color: var(--verde-900);

}



.ficha-caso-clinico__cabecera {

	display: grid;

	grid-template-columns: minmax(0, 1.15fr) minmax(18rem, .85fr);

	align-items: end;

	gap: clamp(2rem, 7vw, 8rem);

	margin-bottom: clamp(3rem, 6vw, 5.5rem);

}



.ficha-caso-clinico__eyebrow {

	grid-column: 1 / -1;

	margin: 0 0 -1rem;

	color: var(--verde-700);

	font-size: .7rem;

	font-weight: 700;

	letter-spacing: .2em;

	text-transform: uppercase;

}



.ficha-caso-clinico__cabecera h2 {

	margin: 0;

	font-size: clamp(3.1rem, 6vw, 6.2rem);

	font-weight: 300;

	line-height: .9;

	letter-spacing: -.06em;

}



.ficha-caso-clinico__cabecera h2 span,

.ficha-caso-clinico__cabecera h2 em { display: block; }

.ficha-caso-clinico__cabecera h2 em {

	color: var(--verde-700);

	font-family: var(--fuente-serif);

	font-weight: 400;

}

.ficha-caso-clinico__cabecera > p:last-child {

	max-width: 42ch;

	margin: 0 0 .35rem;

	font-size: clamp(1rem, 1.25vw, 1.2rem);

	line-height: 1.65;

}



.ficha-caso-clinico__comparativa {

	position: relative;

	width: min(100%, 58rem);

	margin: 0 auto clamp(4rem, 8vw, 7rem);

	overflow: hidden;

	border-radius: 1.4rem 7rem 1.4rem 1.4rem;

	box-shadow: 0 34px 70px -48px rgba(23, 47, 28, .65);

}

.ficha-caso-clinico__comparativa img { display: block; width: 100%; height: auto; }

.ficha-caso-clinico__rotulo {

	position: absolute;

	top: 1.2rem;

	padding: .55rem .8rem;

	border: 1px solid rgba(249,235,211,.4);

	border-radius: 999px;

	background: rgba(21,38,23,.75);

	color: #f9ebd3;

	font-size: .62rem;

	font-weight: 700;

	letter-spacing: .14em;

	text-transform: uppercase;

}

.ficha-caso-clinico__rotulo--antes { left: 1.2rem; }

.ficha-caso-clinico__rotulo--despues { right: clamp(3rem, 5vw, 5rem); }



.ficha-caso-clinico__galeria {

	display: grid;

	grid-template-columns: repeat(3, minmax(0, 1fr));

	gap: clamp(.8rem, 1.5vw, 1.35rem);

}

.ficha-caso-foto {

	position: relative;

	min-width: 0;

	padding: 0;

	overflow: hidden;

	border: 0;

	border-radius: 1rem 3.8rem 1rem 1rem;

	background: var(--verde-900);

	color: #f9ebd3;

	cursor: pointer;

	text-align: left;

	aspect-ratio: 4 / 3;

}

.ficha-caso-foto:nth-child(4),

.ficha-caso-foto:nth-child(10) { grid-column: span 2; aspect-ratio: 2 / 1; }

.ficha-caso-foto--texto {

	background: linear-gradient(145deg, var(--verde-900), #36583b);

}

.ficha-caso-foto--texto::before {

	content: '';

	position: absolute;

	inset: 1rem;

	border: 1px solid rgba(224,205,157,.22);

	border-radius: .65rem 2.9rem .65rem .65rem;

}

.ficha-caso-foto img {

	position: absolute;

	inset: 0;

	width: 100%;

	height: 100%;

	object-fit: cover;

	transition: transform .65s cubic-bezier(.2,.7,.2,1), filter .65s ease;

}

.ficha-caso-foto__velo {

	position: absolute;

	inset: 0;

	background: linear-gradient(180deg, transparent 40%, rgba(12,29,17,.86) 100%);

}

.ficha-caso-foto__numero {

	position: absolute;

	top: 1rem;

	left: 1rem;

	font-size: .65rem;

	font-weight: 700;

	letter-spacing: .16em;

}

.ficha-caso-foto__titulo {

	position: absolute;

	right: 4.5rem;

	bottom: 1.2rem;

	left: 1.2rem;

	font-size: clamp(1.15rem, 1.8vw, 1.55rem);

	line-height: 1.05;

}

.ficha-caso-foto__mas {

	position: absolute;

	right: 1rem;

	bottom: 1rem;

	display: grid;

	width: 2.7rem;

	height: 2.7rem;

	place-items: center;

	border: 1px solid rgba(249,235,211,.72);

	border-radius: 50%;

	font-size: 1.35rem;

}

.ficha-caso-foto:hover img,

.ficha-caso-foto:focus-visible img { transform: scale(1.045); filter: saturate(.92); }

.ficha-caso-foto:focus-visible { outline: 3px solid var(--dorado); outline-offset: 4px; }

.ficha-caso-clinico__ficha {

	max-width: 74ch;

	margin: clamp(3rem, 6vw, 5rem) auto 0;

	padding-top: 1.5rem;

	border-top: 1px solid rgba(45,71,46,.22);

	font-size: .86rem;

	line-height: 1.7;

}



.ficha-caso-modal {

	width: min(1040px, calc(100% - 2rem));

	max-height: calc(100dvh - 2rem);

	padding: 0;

	overflow: hidden;

	border: 0;

	border-radius: 1.25rem 5rem 1.25rem 1.25rem;

	background: #f9ebd3;

	color: var(--verde-900);

	box-shadow: 0 35px 90px rgba(0,0,0,.4);

}

.ficha-caso-modal::backdrop { background: rgba(10,25,15,.82); backdrop-filter: blur(6px); }

.ficha-caso-modal[open] { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(18rem, .8fr); }

.ficha-caso-modal__imagen { min-height: min(70vh, 650px); background: #162c1c; }

.ficha-caso-modal__imagen img { width: 100%; height: 100%; object-fit: contain; }

.ficha-caso-modal__contenido { display: flex; flex-direction: column; justify-content: center; padding: clamp(2rem, 4vw, 4rem); }

.ficha-caso-modal__contenido .ficha-caso-clinico__eyebrow { margin: 0 0 1.5rem; }

.ficha-caso-modal__contenido h3 { margin: 0 0 1.4rem; font-size: clamp(2rem, 3.5vw, 3.4rem); font-weight: 300; line-height: .95; letter-spacing: -.05em; }

.ficha-caso-modal__contenido > p:last-child { margin: 0; font-size: 1rem; line-height: 1.7; }

.ficha-caso-modal__contenido > p:last-child { white-space: pre-line; }

.ficha-caso-modal--sin-imagen[open] { display: block; width: min(660px, calc(100% - 2rem)); }

.ficha-caso-modal--sin-imagen .ficha-caso-modal__contenido { min-height: min(70vh, 650px); }

.ficha-caso-modal__cerrar {

	position: absolute;

	top: 1rem;

	right: 1rem;

	z-index: 2;

	display: grid;

	width: 3rem;

	height: 3rem;

	place-items: center;

	border: 1px solid rgba(249,235,211,.45);

	border-radius: 50%;

	background: rgba(21,38,23,.8);

	color: #f9ebd3;

	font-size: 1.5rem;

	cursor: pointer;

}



@media (max-width: 760px) {

	.ficha-caso-clinico__cabecera { display: block; }

	.ficha-caso-clinico__cabecera .ficha-caso-clinico__eyebrow { margin-bottom: 1.5rem; }

	.ficha-caso-clinico__cabecera > p:last-child { margin-top: 2rem; }

	.ficha-caso-clinico__comparativa { border-radius: 1rem 4rem 1rem 1rem; }

	.ficha-caso-clinico__galeria { grid-template-columns: 1fr 1fr; }

	.ficha-caso-foto,

	.ficha-caso-foto:nth-child(4),

	.ficha-caso-foto:nth-child(10) { grid-column: auto; aspect-ratio: 4 / 5; border-radius: .8rem 2.8rem .8rem .8rem; }

	.ficha-caso-foto__titulo { right: 1rem; bottom: 4.5rem; font-size: 1.05rem; }

	.ficha-caso-modal[open] { display: block; overflow: auto; }

	.ficha-caso-modal__imagen { min-height: 0; height: 48vh; }

	.ficha-caso-modal__contenido { padding: 2rem 1.35rem 2.5rem; }

}



@media (prefers-reduced-motion: reduce) {

	.ficha-caso-foto img { transition: none; }

}



/* Caso completo: acceso desde el bloque Antes y después */

.ficha-caso__ver-mas {

	display: flex;

	width: fit-content;

	align-items: center;

	justify-content: space-between;

	gap: 2.2rem;

	margin: 1.25rem auto 0;

	padding: .9rem 1rem .9rem 1.35rem;

	border: 1px solid rgba(45, 71, 46, .32);

	border-radius: 999px;

	background: transparent;

	color: var(--verde-900);

	font: inherit;

	font-size: .86rem;

	font-weight: 600;

	cursor: pointer;

	transition: background-color .25s ease, color .25s ease, transform .25s ease;

}

.ficha-caso__ver-mas span:last-child {

	display: grid;

	width: 2rem;

	height: 2rem;

	place-items: center;

	border-radius: 50%;

	background: var(--verde-900);

	color: #f9ebd3;

	font-size: 1rem;

	line-height: 1;

}

.ficha-caso__ver-mas:hover,

.ficha-caso__ver-mas:focus-visible {

	background: var(--verde-900);

	color: #f9ebd3;

	transform: translateY(-2px);

}

.ficha-caso__ver-mas:hover span:last-child,

.ficha-caso__ver-mas:focus-visible span:last-child { background: #f9ebd3; color: var(--verde-900); }

.ficha-caso__ver-mas:focus-visible { outline: 3px solid var(--dorado); outline-offset: 3px; }



.caso-modal-abierto { overflow: hidden; }

.ficha-caso-detalle-modal {

	width: min(1180px, calc(100% - 2rem));

	max-height: calc(100dvh - 2rem);

	padding: 0;

	overflow: hidden;

	border: 0;

	border-radius: 1.25rem 5rem 1.25rem 1.25rem;

	background: #f9ebd3;

	color: var(--verde-900);

	box-shadow: 0 35px 100px rgba(0, 0, 0, .42);

}

.ficha-caso-detalle-modal[open] { display: block; }

.ficha-caso-detalle-modal::backdrop { background: rgba(10, 25, 15, .84); backdrop-filter: blur(7px); }

.ficha-caso-detalle-modal__scroll { max-height: calc(100dvh - 2rem); overflow-y: auto; overscroll-behavior: contain; }

.ficha-caso-detalle-modal__cerrar {

	position: fixed;

	top: max(1.5rem, calc((100dvh - min(100dvh - 2rem, 900px)) / 2 + 1rem));

	right: max(1.5rem, calc((100vw - min(1180px, 100vw - 2rem)) / 2 + 1rem));

	z-index: 3;

	display: grid;

	width: 3rem;

	height: 3rem;

	place-items: center;

	border: 1px solid rgba(249, 235, 211, .48);

	border-radius: 50%;

	background: rgba(21, 38, 23, .9);

	color: #f9ebd3;

	font-size: 1.5rem;

	cursor: pointer;

}

.ficha-caso-detalle-modal__cabecera {

	padding: clamp(2.5rem, 6vw, 5.5rem) clamp(1.4rem, 6vw, 5.5rem);

	background: var(--verde-900);

	color: #f9ebd3;

}

.ficha-caso-detalle-modal__cabecera > p {

	margin: 0 0 1.3rem;

	color: #e0cd9d;

	font-size: .68rem;

	font-weight: 700;

	letter-spacing: .18em;

	text-transform: uppercase;

}

.ficha-caso-detalle-modal__cabecera h2 {

	max-width: 12ch;

	margin: 0;

	font-size: clamp(2.8rem, 6vw, 5.8rem);

	font-weight: 300;

	line-height: .92;

	letter-spacing: -.055em;

}

.ficha-caso-detalle-modal__cabecera h2 em { color: #e0cd9d; font-family: var(--fuente-serif); font-weight: 400; }

.ficha-caso-detalle-modal__etapas { padding: clamp(1.4rem, 4vw, 4rem) clamp(1.4rem, 5vw, 4.5rem); }

.ficha-caso-detalle-modal__etapa {

	display: grid;

	grid-template-columns: minmax(0, 1.05fr) minmax(17rem, .95fr);

	align-items: center;

	gap: clamp(1.5rem, 5vw, 4.5rem);

	padding: clamp(2rem, 4vw, 4rem) 0;

	border-bottom: 1px solid rgba(45, 71, 46, .2);

}

.ficha-caso-detalle-modal__etapa:first-child { padding-top: 0; }

.ficha-caso-detalle-modal__etapa:last-child { padding-bottom: 0; border-bottom: 0; }

.ficha-caso-detalle-modal__etapa:nth-child(even) .ficha-caso-detalle-modal__imagenes { order: 2; }

.ficha-caso-detalle-modal__etapa:not(:has(.ficha-caso-detalle-modal__imagenes)) { display: block; }

.ficha-caso-detalle-modal__etapa:not(:has(.ficha-caso-detalle-modal__imagenes)) .ficha-caso-detalle-modal__texto { max-width: 66ch; margin-inline: auto; }

.ficha-caso-detalle-modal__imagenes { display: grid; gap: .65rem; }

.ficha-caso-detalle-modal__imagenes--doble { grid-template-columns: 1fr 1fr; }

.ficha-caso-detalle-modal__imagenes img {

	display: block;

	width: 100%;

	height: 100%;

	min-height: 15rem;

	max-height: 31rem;

	object-fit: cover;

	border-radius: .85rem 3.5rem .85rem .85rem;

	background: #ead9b9;

}

.ficha-caso-detalle-modal__imagenes--doble img { min-height: 18rem; }

.ficha-caso-detalle-modal__texto h3 {

	margin: 0 0 1.35rem;

	font-size: clamp(1.9rem, 3.2vw, 3rem);

	font-weight: 400;

	line-height: 1;

	letter-spacing: -.04em;

}

.ficha-caso-detalle-modal__texto p { margin: 0 0 1rem; font-size: .98rem; line-height: 1.7; }

.ficha-caso-detalle-modal__texto p:last-child { margin-bottom: 0; }



@media (max-width: 760px) {

	.ficha-caso-detalle-modal { width: calc(100% - 1rem); max-height: calc(100dvh - 1rem); border-radius: 1rem 3rem 1rem 1rem; }

	.ficha-caso-detalle-modal__scroll { max-height: calc(100dvh - 1rem); }

	.ficha-caso-detalle-modal__cerrar { top: 1rem; right: 1rem; }

	.ficha-caso-detalle-modal__etapa { grid-template-columns: 1fr; gap: 1.5rem; }

	.ficha-caso-detalle-modal__etapa:nth-child(even) .ficha-caso-detalle-modal__imagenes { order: 0; }

	.ficha-caso-detalle-modal__imagenes img { min-height: 13rem; max-height: 24rem; }

	.ficha-caso-detalle-modal__imagenes--doble img { min-height: 12rem; }

}

.ficha-tratamiento .contenedor { max-width: 1560px; }

.ficha-tratamiento .seccion { padding-block: clamp(5rem, 9vw, 9rem); }

.ficha-tratamiento .eyebrow {

	display: block;

	margin: 0 0 1.4rem;

	font-size: .65rem;

	font-weight: 600;

	letter-spacing: .15em;

	text-transform: uppercase;

}



.ficha-tratamiento__hero {

	position: relative;

	display: flex;

	align-items: flex-end;

	min-height: clamp(430px, 54svh, 590px);

	padding: clamp(8.5rem, 13vw, 10rem) 0 clamp(3rem, 5vw, 4.5rem);

	background-color: var(--verde-900);

	background-image: linear-gradient(90deg, rgba(20, 35, 22, .94) 0%, rgba(20, 35, 22, .68) 48%, rgba(20, 35, 22, .15) 100%), var(--ficha-hero);

	background-position: center;

	background-size: cover;

	color: var(--crema);

	isolation: isolate;

}

.ficha-tratamiento__hero::after {

	content: '';

	position: absolute;

	inset: 0;

	z-index: -1;

	background: linear-gradient(180deg, transparent 52%, rgba(12, 24, 14, .28));

}

.ficha-tratamiento__hero-inner { width: 100%; }

.ficha-tratamiento__volver {

	display: inline-flex;

	margin-bottom: clamp(2rem, 4vw, 3rem);

	color: var(--dorado-claro);

	font-size: .68rem;

	font-weight: 600;

	letter-spacing: .12em;

	text-decoration: none;

	text-transform: uppercase;

}

.ficha-tratamiento__hero h1 {

	max-width: 12ch;

	margin: 0;

	font-size: clamp(4rem, 8vw, 7rem);

	font-weight: 300;

	line-height: .88;

	letter-spacing: -.065em;

	text-wrap: balance;

}

.ficha-tratamiento__hero h1 span,

.ficha-tratamiento__hero h1 em { display: block; }

.ficha-tratamiento__hero h1 em {

	font-family: var(--fuente-serif);

	/* La serif tiene menor altura óptica: se compensa para igualarla visualmente. */

	font-size: var(--ajuste-serif-titulos);

	font-weight: 400;

	font-style: italic;

	line-height: .88;

	letter-spacing: -.015em;

	color: var(--dorado-claro);

}



.ficha-tratamiento__intro {

	padding-block: clamp(2.5rem, 4vw, 4rem) !important;

	background: #F9EBD3;

	color: var(--verde-900);

}

.ficha-tratamiento__intro::before { content: none; }

.ficha-tratamiento__intro-simple { display: flex; justify-content: center; }

.ficha-tratamiento__intro-simple p {

	max-width: 62ch;

	margin: 0;

	color: var(--verde-900);

	font-size: clamp(.9rem, 1.05vw, 1rem);

	line-height: 1.65;

	text-align: center;

}

.ficha-tratamiento__intro-grid {

	position: relative;

	z-index: 1;

	display: grid;

	grid-template-columns: minmax(270px, .72fr) minmax(360px, .9fr);

	gap: clamp(2.5rem, 7vw, 7rem);

	align-items: center;

}

.ficha-tratamiento__intro h2,

.ficha-seccion-cabecera h2,

.ficha-tratamiento__cta h2 {

	max-width: 12ch;

	margin: 0;

	font-size: clamp(3rem, 6vw, 4rem);

	font-weight: 300;

	line-height: .94;

	letter-spacing: -.06em;

}

.ficha-tratamiento__intro h2 em,

.ficha-seccion-cabecera h2 em,

.ficha-tratamiento__cta h2 em {

	display: block;

	font-family: var(--fuente-serif);

	font-size: var(--ajuste-serif-titulos);

	font-weight: 400;

	font-style: italic;

	line-height: .9;

	letter-spacing: -.015em;

	color: var(--verde-700);

}

.ficha-tratamiento__intro h2 em { color: var(--dorado-claro); }

.ficha-tratamiento__intro h2 { max-width: 10ch; font-size: clamp(3rem, 4.6vw, 4.35rem); }

.ficha-tratamiento__intro h2 em { font-size: var(--ajuste-serif-titulos); }

.ficha-tratamiento__bajada {

	margin: 0 0 1.25rem;

	font-size: clamp(1rem, 1.15vw, 1.12rem);

	line-height: 1.45;

}

.ficha-tratamiento__texto {

	max-width: 42rem;

	padding: .25rem 0 .25rem clamp(2rem, 4vw, 4rem);

	background: transparent;

	border: 0;

	border-left: 1px solid rgba(254, 240, 215, .25);

	border-radius: 0;

	box-shadow: none;

	color: var(--crema);

	transition: none;

}

.ficha-tratamiento__texto:hover { transform: none; box-shadow: none; }

.ficha-tratamiento__texto .entrada-contenido { max-width: 39rem; margin: 0; font-size: .9rem; line-height: 1.6; }

body.single-auren_tratamiento .ficha-tratamiento__intro .ficha-tratamiento__texto p { color: rgba(254, 240, 215, .86); }

.ficha-tratamiento__movimiento {

	position: relative;

	z-index: 1;

	margin-top: 3rem;

	padding-block: 1rem;

	overflow: hidden;

	border-top: 1px solid rgba(254, 240, 215, .18);

	background: rgba(18, 36, 20, .16);

}

.ficha-tratamiento__movimiento-pista {

	display: flex;

	width: max-content;

	align-items: center;

	gap: clamp(1.5rem, 3vw, 3rem);

	animation: ficha-intro-flujo 28s linear infinite;

	will-change: transform;

}

.ficha-tratamiento__movimiento:hover .ficha-tratamiento__movimiento-pista { animation-play-state: paused; }

.ficha-tratamiento__movimiento span {

	font-family: var(--fuente-serif);

	font-size: clamp(1.45rem, 2.2vw, 2.2rem);

	font-style: italic;

	color: var(--dorado-claro);

}

.ficha-tratamiento__movimiento i { color: rgba(254, 240, 215, .58); font-style: normal; font-size: .75rem; }

@keyframes ficha-intro-flujo {

	from { transform: translate3d(0, 0, 0); }

	to { transform: translate3d(-50%, 0, 0); }

}



.ficha-multimedia { background: var(--hueso, #e9dfca); color: var(--verde-900); }

.ficha-multimedia .ficha-seccion-cabecera { display: block; margin-bottom: clamp(2.5rem, 5vw, 4.5rem); text-align: center; }

.ficha-multimedia .ficha-seccion-cabecera h2 { max-width: none; font-size: clamp(3.25rem, 6vw, 6rem); line-height: .88; }

.ficha-multimedia .ficha-seccion-cabecera h2 em { display: inline; color: var(--verde-700); }

.ficha-multimedia__grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(280px, .75fr); gap: clamp(1rem, 2vw, 2rem); align-items: stretch; }

.ficha-multimedia__grid--solo-video,

.ficha-multimedia__grid--solo-fotos { grid-template-columns: minmax(0, 1fr); }

.ficha-multimedia__video { min-height: 0; aspect-ratio: 16 / 9; overflow: hidden; background: var(--verde-900); border-radius: clamp(1.25rem, 2.5vw, 2.5rem); }

.ficha-multimedia__grid--solo-video .ficha-multimedia__video { width: 100%; max-width: 70rem; margin-inline: auto; }

.ficha-multimedia__video iframe,

.ficha-multimedia__video video { display: block; width: 100%; height: 100%; border: 0; object-fit: cover; }

.ficha-multimedia__fotos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(.75rem, 1.2vw, 1.2rem); }

.ficha-multimedia__grid--solo-fotos .ficha-multimedia__fotos { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.ficha-multimedia__foto { min-height: 0; margin: 0; aspect-ratio: 4 / 5; overflow: hidden; border-radius: clamp(1rem, 1.8vw, 1.8rem); }

.ficha-multimedia__foto img { display: block; width: 100%; height: 100%; object-fit: cover; }

.ficha-multimedia__intro {

	display: grid;

	grid-template-columns: minmax(260px, .72fr) minmax(420px, 1.28fr);

	gap: clamp(2.5rem, 7vw, 7rem);

	align-items: center;

}

.ficha-multimedia__contenido h2 {

	max-width: 10ch;

	margin: 0;

	font-size: clamp(3rem, 5.2vw, 5.4rem);

	font-weight: 300;

	line-height: .9;

	letter-spacing: -.06em;

}

.ficha-multimedia__contenido h2 span,

.ficha-multimedia__contenido h2 em { display: block; }

.ficha-multimedia__contenido h2 em {

	font-family: var(--fuente-serif);

	font-size: var(--ajuste-serif-titulos);

	font-weight: 400;

	font-style: italic;

	line-height: .92;

	letter-spacing: -.015em;

	color: var(--verde-700);

}

.ficha-multimedia__contenido p { max-width: 31ch; margin: 2rem 0 0; font-size: clamp(.95rem, 1.1vw, 1.08rem); line-height: 1.6; }

.ficha-multimedia__video .video-facade { height: 100%; }

.ficha-multimedia__video .video-facade img { display: block; width: 100%; height: 100%; aspect-ratio: 16 / 9; object-fit: cover; }

.ficha-multimedia__video .video-play:disabled { opacity: .88; }

.ficha-multimedia__estado {

	position: absolute;

	right: 1.25rem;

	bottom: 1.25rem;

	z-index: 3;

	padding: .65rem .85rem;

	background: rgba(24, 44, 26, .78);

	border: 1px solid rgba(249, 235, 211, .32);

	border-radius: 999px;

	backdrop-filter: blur(8px);

	color: var(--crema);

	font-size: .62rem;

	font-weight: 600;

	letter-spacing: .1em;

	text-transform: uppercase;

}

.ficha-multimedia__fotos--galeria { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: clamp(1rem, 2vw, 2rem); }



.ficha-resultados { padding-top: clamp(3rem, 5vw, 5rem) !important; background: #F9EBD3; color: var(--verde-900); }

.ficha-resultados .ficha-seccion-cabecera {

	display: block;

	margin-bottom: clamp(3rem, 5vw, 5rem);

	text-align: center;

	color: var(--verde-900);

}

.ficha-resultados .ficha-seccion-cabecera h2 {

	max-width: none;

	font-size: clamp(4rem, 7vw, 7rem);

	line-height: .82;

	white-space: nowrap;

}

.ficha-resultados .ficha-seccion-cabecera h2 em {

	display: inline;

	font-size: var(--ajuste-serif-titulos);

	color: var(--verde-700);

}

.ficha-resultados .ficha-resultados__intro {

	max-width: 62ch;

	margin: 0 auto clamp(2rem, 3vw, 3rem);

	color: var(--verde-900);

	font-size: clamp(.9rem, 1.05vw, 1rem);

	line-height: 1.65;

	text-align: center;

}

.ficha-seccion-cabecera {

	display: grid;

	grid-template-columns: minmax(0, 1fr) minmax(250px, .42fr);

	gap: 1.5rem clamp(3rem, 9vw, 10rem);

	align-items: end;

	margin-bottom: clamp(3rem, 6vw, 6rem);

}

.ficha-seccion-cabecera .eyebrow { grid-column: 1 / -1; margin-bottom: 1rem; }

.ficha-seccion-cabecera p { max-width: 32ch; margin: 0; line-height: 1.6; }

.ficha-resultados__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1.25rem, 2vw, 2rem); }

.ficha-caso:first-child:last-child { grid-column: auto; max-width: none; margin-inline: 0; width: auto; }

.ficha-caso h3 { margin: 0 0 1rem; color: var(--verde-700); font-family: var(--fuente-serif); font-size: 1.35rem; font-style: italic; font-weight: 400; }

.ficha-caso .comparador__marco {

	position: relative;

	aspect-ratio: 1.16;

	overflow: hidden;

	border: 1px solid rgba(45, 71, 46, .2);

	border-radius: clamp(1.25rem, 2.5vw, 2.5rem) clamp(5rem, 8vw, 8rem) clamp(1.25rem, 2.5vw, 2.5rem) clamp(1.25rem, 2.5vw, 2.5rem);

	box-shadow: 0 38px 75px -45px rgba(0, 0, 0, .82);

	isolation: isolate;

}

.ficha-caso .comparador__imagen { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 43%; user-select: none; -webkit-user-drag: none; }

.ficha-caso .comparador__antes { position: absolute; inset: 0; z-index: 1; clip-path: inset(0 calc(100% - var(--posicion)) 0 0); }

.ficha-caso .comparador__linea { position: absolute; top: 0; bottom: 0; left: var(--posicion); z-index: 3; width: 2px; background: rgba(254, 240, 215, .95); transform: translateX(-1px); pointer-events: none; }

.ficha-caso .comparador__manejador { position: absolute; top: 50%; left: 50%; display: flex; width: 58px; height: 58px; align-items: center; justify-content: center; background: var(--crema); border: 1px solid var(--verde-900); border-radius: 50%; box-shadow: 0 10px 30px rgba(21, 38, 23, .28); color: var(--verde-900); font-family: Arial, sans-serif; font-size: 1rem; font-weight: 600; transform: translate(-50%, -50%); }

.ficha-caso .comparador__rotulo { position: absolute; top: 1.25rem; z-index: 4; padding: .55rem .8rem; background: rgba(21, 38, 23, .76); border: 1px solid rgba(254, 240, 215, .35); border-radius: 999px; backdrop-filter: blur(8px); color: var(--crema); font-size: .62rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; pointer-events: none; }

.ficha-caso .comparador__rotulo--antes { left: 1.25rem; }

.ficha-caso .comparador__rotulo--despues { right: 4.75rem; }

.ficha-caso .comparador__control { position: absolute; inset: 0; z-index: 5; width: 100%; height: 100%; margin: 0; opacity: .001; cursor: ew-resize; }

.ficha-caso .comparador__marco:has(.comparador__control:focus-visible) { outline: 3px solid var(--dorado-claro); outline-offset: 5px; }

.ficha-resultados__aclaracion { max-width: 55ch; margin: 2rem 0 0; color: rgba(45, 71, 46, .66); font-size: .72rem; line-height: 1.5; }



.ficha-resenas { background: var(--hueso); }

.ficha-resenas .ficha-seccion-cabecera { margin-bottom: clamp(3rem, 5vw, 5rem); }

.ficha-resenas .ficha-seccion-cabecera h2 {

	max-width: 15ch;

	font-size: clamp(4rem, 7vw, 6.5rem);

	line-height: .88;

}

.ficha-resenas .ficha-seccion-cabecera h2 em { font-size: var(--ajuste-serif-titulos); }

.ficha-resenas__marquee { margin-top: clamp(-1rem, -2vw, -.5rem); }

.ficha-resena.testimonio {

	position: relative;

	flex: 0 0 clamp(19rem, 23vw, 26rem);

	min-width: 0;

	min-height: 340px;

	padding: clamp(1.75rem, 2.2vw, 2.5rem);

	overflow: hidden;

	background: var(--verde-900);

	border: 1px solid rgba(254, 240, 215, .12);

	border-radius: clamp(1.25rem, 2vw, 2rem) clamp(3rem, 4.5vw, 4.5rem) clamp(1.25rem, 2vw, 2rem) clamp(1.25rem, 2vw, 2rem);

	color: var(--crema);

}

.ficha-resena.testimonio::after { content: ''; position: absolute; right: -20%; bottom: -38%; width: 65%; aspect-ratio: 1; border: 1px solid rgba(224, 205, 157, .14); border-radius: 50%; pointer-events: none; }

.ficha-resena .testimonio__google { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: .65rem; align-self: flex-start; padding: .48rem .72rem; background: var(--blanco); border-radius: 999px; color: var(--verde-900); font-size: .64rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }

.ficha-resena .google-wordmark { display: inline-flex; font-size: 1rem; font-weight: 600; letter-spacing: -.08em; line-height: 1; text-transform: none; }

.ficha-resena .google-wordmark__g,.ficha-resena .google-wordmark__g2{color:#4285f4}

.ficha-resena .google-wordmark__o1,.ficha-resena .google-wordmark__e{color:#ea4335}

.ficha-resena .google-wordmark__o2{color:#fbbc05}

.ficha-resena .google-wordmark__l{color:#34a853}

.ficha-resena .estrellas { position: relative; z-index: 1; margin: 1.15rem 0 .95rem; color: var(--dorado-claro); }

.ficha-resena.testimonio blockquote { position: relative; z-index: 1; margin: 0 0 1.6rem; font-family: var(--fuente-texto); font-size: clamp(1.25rem, 1.5vw, 1.6rem); font-style: normal; font-weight: 400; line-height: 1.3; color: var(--crema); }

.ficha-resena .testimonio__pie { position: relative; z-index: 1; border-top-color: rgba(254, 240, 215, .2); color: rgba(254, 240, 215, .78); }

.ficha-resena .testimonio__inicial { background: rgba(254, 240, 215, .12); color: var(--crema); }



.ficha-tratamiento__cta {

	position: relative;

	display: flex;

	min-height: clamp(300px, 32vw, 390px);

	align-items: center;

	padding-block: 3.5rem !important;

	background-color: var(--verde-900);

	background-image: linear-gradient(90deg, rgba(16, 31, 18, .92), rgba(16, 31, 18, .56) 58%, rgba(16, 31, 18, .72)), var(--ficha-cta);

	background-position: center;

	background-size: cover;

	color: var(--crema);

}

.ficha-tratamiento__cta-inner {

	display: flex;

	width: 100%;

	max-width: 1560px !important;

	flex-direction: column;

	gap: 1.75rem;

	align-items: center;

	justify-content: center;

	margin-inline: auto;

	padding: 0;

	text-align: center;

}

.ficha-tratamiento__cta h2 em { color: var(--dorado-claro); }

.ficha-tratamiento__cta h2 { max-width: none; margin: 0; font-size: clamp(2.8rem, 4vw, 4rem); }

.ficha-tratamiento__cta h2 span,

.ficha-tratamiento__cta h2 em { display: block; white-space: nowrap; }

.ficha-tratamiento__cta .btn { --btn-efecto: var(--crema); min-height: 3.6rem; padding: 1rem 1.7rem; border-color: var(--dorado-claro); background: var(--dorado-claro); color: var(--verde-900); }



@media (max-width: 1100px) {

	.ficha-resultados__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

}

@media (max-width: 900px) {

	.ficha-multimedia__intro { grid-template-columns: 1fr; }

	.ficha-multimedia__contenido h2 { max-width: 12ch; }

	.ficha-multimedia__fotos--galeria { grid-template-columns: repeat(2, minmax(0, 1fr)); }

	.ficha-multimedia__grid { grid-template-columns: 1fr; }

	.ficha-multimedia__grid--solo-fotos .ficha-multimedia__fotos { grid-template-columns: repeat(2, minmax(0, 1fr)); }

	.ficha-tratamiento__intro-grid,

	.ficha-seccion-cabecera,

	.ficha-tratamiento__cta-inner { grid-template-columns: 1fr; }

	.ficha-tratamiento__texto { max-width: none; padding: 2rem 0 0; border-left: 0; border-top: 1px solid rgba(254, 240, 215, .25); }

	.ficha-tratamiento__cta-inner { width: calc(100% - (2 * var(--gutter))); }

	.ficha-caso:first-child:last-child { grid-column: auto; }

	.ficha-resena.testimonio { flex-basis: clamp(17rem, 42vw, 21rem); }

}

@media (max-width: 560px) {

	.ficha-multimedia__contenido h2 { font-size: clamp(2.8rem, 13vw, 4rem); }

	.ficha-multimedia__fotos--galeria { grid-template-columns: 1fr; }

	.ficha-multimedia .ficha-seccion-cabecera h2 { font-size: clamp(2.6rem, 12vw, 3.8rem); }

	.ficha-multimedia__fotos,

	.ficha-multimedia__grid--solo-fotos .ficha-multimedia__fotos { grid-template-columns: 1fr; }

	.ficha-tratamiento__hero { min-height: 430px; padding: 7.5rem 0 2.75rem; }

	.ficha-tratamiento__hero h1 { font-size: clamp(3.2rem, 15vw, 4.6rem); }

	.ficha-tratamiento__intro h2,

	.ficha-seccion-cabecera h2,

	.ficha-tratamiento__cta h2 { font-size: clamp(2.7rem, 13vw, 4rem); }

	.ficha-resultados .ficha-seccion-cabecera h2 { font-size: clamp(2.15rem, 9.4vw, 3rem); }

	.ficha-resultados .ficha-seccion-cabecera h2 em { font-size: var(--ajuste-serif-titulos); }

	.ficha-resenas .ficha-seccion-cabecera h2 { font-size: clamp(2.7rem, 11.5vw, 3.7rem); }

	.ficha-resenas .ficha-seccion-cabecera h2 em { font-size: var(--ajuste-serif-titulos); }

	.ficha-tratamiento__cta h2 { font-size: clamp(1.8rem, 7.8vw, 2.6rem); }

	.ficha-tratamiento__cta h2 em { font-size: var(--ajuste-serif-titulos); }

	.ficha-resultados__grid { grid-template-columns: 1fr; }

	.ficha-caso .comparador__marco { aspect-ratio: .84; border-radius: 1.25rem 4.5rem 1.25rem 1.25rem; }

	.ficha-caso .comparador__imagen { object-position: center; }

	.ficha-caso .comparador__manejador { width: 50px; height: 50px; }

	.ficha-resena.testimonio { flex-basis: 78vw; min-height: 300px; padding: 1.75rem; border-radius: 1.25rem 3rem 1.25rem 1.25rem; }

	.ficha-tratamiento__cta { min-height: 310px; }

}

@media (prefers-reduced-motion: reduce) {

	.ficha-tratamiento__movimiento-pista { animation: none; }

	.ficha-tratamiento__texto { transition: none; }

	.ficha-caso .comparador__imagen { transition: none; }

}



/* Keep clinical before/after photos fully visible on small screens. */

@media(max-width:760px){

.ficha-caso .comparador__marco{aspect-ratio:3 / 2;border-radius:16px;background:#101810}

.ficha-caso .comparador__imagen{object-fit:contain;object-position:center}

.ficha-caso .comparador__rotulo{top:10px;padding:6px 10px;font-size:10px}

.ficha-caso .comparador__rotulo--antes{left:10px}

.ficha-caso .comparador__rotulo--despues{right:10px}

.ficha-caso .comparador__manejador{width:42px;height:42px}

}



/* Same photographic canvas at every viewport; transforms do not alter source files. */

.ficha-caso .comparador--alineado .comparador__marco{aspect-ratio:3/2;border-radius:20px;background:#101810}

.ficha-caso .comparador--alineado .comparador__imagen{object-fit:cover;object-position:center;transform-origin:center}

.ficha-caso .comparador--alineado .comparador__antes{overflow:hidden}

.ficha-caso:first-child:last-child{grid-column:1/-1;width:min(100%,760px);justify-self:center}

.auren-caso-contenido{max-width:940px;margin:auto;color:var(--verde-oscuro,#29462f);font-size:17px;line-height:1.75}

.auren-caso-contenido h2,.auren-caso-contenido h3{font-size:clamp(25px,3vw,38px);line-height:1.2;margin:2em 0 .7em}

.auren-caso-contenido p{margin:0 0 1.3em}

.auren-caso-contenido img{display:block;width:auto;max-width:100%;height:auto;max-height:680px;object-fit:contain;margin:24px auto;border-radius:14px}

@media(max-width:760px){.auren-caso-contenido{font-size:16px}.ficha-caso .comparador--alineado .comparador__marco{border-radius:16px}}



.ficha-caso-detalle-modal__cabecera{padding:clamp(28px,4vw,56px)}

.ficha-caso-detalle-modal__cabecera h2{color:#f9ebd3;max-width:25ch;font-size:clamp(30px,4vw,56px);line-height:1.05}

.auren-caso-contenido{padding:clamp(20px,4vw,48px);box-sizing:border-box;max-width:1036px}

.auren-caso-contenido>h3:first-child{margin-top:0}



/* Treatment layout: centered opening and a consistent rhythm between sections. */

.ficha-tratamiento__hero {

 align-items: center;

 min-height: clamp(440px, 58svh, 600px);

 padding: 9rem 0 4rem;

 background-image: linear-gradient(90deg, rgba(20,35,22,.64), rgba(20,35,22,.72) 50%, rgba(20,35,22,.55)), var(--ficha-hero);

}

.ficha-tratamiento__hero-inner { text-align: center; }

.ficha-tratamiento__hero h1 {

 max-width: 22ch;

 color: #f9ebd3;

 margin: 0 auto;

 font-size: clamp(3.5rem, 6.5vw, 6rem);

 line-height: 1.02;

 letter-spacing: -.045em;

}

.ficha-tratamiento__hero h1 em { line-height: 1.02; font-size: var(--ajuste-serif-titulos); margin-top: .04em; }

.ficha-tratamiento > .seccion { padding-block: clamp(3.5rem, 6.5vw, 6rem) !important; }

.ficha-multimedia__intro { grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(2rem,6vw,6rem); max-width: 1160px; margin-inline: auto; }

.ficha-multimedia__contenido h2 { max-width: 13ch; font-size: clamp(2.5rem,4.5vw,4.3rem); line-height: 1.04; letter-spacing: -.045em; }

.ficha-multimedia__contenido h2 em { line-height: 1.05; }

.ficha-multimedia__contenido p { max-width: 36ch; margin-top: 1.5rem; font-size: 1rem; line-height: 1.65; }

.ficha-multimedia__video { border-radius: 24px; }

.ficha-multimedia__video .video-play:disabled { display: none; }

.ficha-resultados .ficha-seccion-cabecera,

.ficha-resenas .ficha-seccion-cabecera { display: block; margin-bottom: clamp(2rem,4vw,3.5rem); text-align: center; }

.ficha-resultados .ficha-seccion-cabecera h2,

.ficha-resenas .ficha-seccion-cabecera h2 { max-width: none; margin-inline: auto; font-size: clamp(2.6rem,5vw,4.8rem); line-height: 1.08; white-space: normal; }

.ficha-resenas .ficha-seccion-cabecera h2 em { display: block; }

.ficha-resultados__grid { max-width: 1160px; margin-inline: auto; gap: 2.5rem; }

.ficha-caso:first-child:last-child { width: min(100%,680px); }

.ficha-caso h3 { text-align: center; line-height: 1.3; font-size: clamp(1.3rem,2vw,1.6rem); margin-bottom: 1.25rem; text-wrap: balance; }

.ficha-resultados__aclaracion { max-width: 68ch; margin: 2rem auto 0; text-align: center; font-size: .8rem; line-height: 1.6; }

.ficha-caso .comparador__rotulo--despues { right: 1.25rem; }

#ficha-resultados-titulo { scroll-margin-top: 110px; }

@media(max-width:900px) {

 .ficha-multimedia__intro { grid-template-columns: minmax(0,1fr); gap: 2rem; max-width: 680px; }

 .ficha-multimedia__contenido { text-align: center; }

 .ficha-multimedia__contenido h2 { max-width: 17ch; margin-inline: auto; }

 .ficha-multimedia__contenido p { margin-inline: auto; }

}

@media(max-width:560px) {

 .ficha-tratamiento__hero { min-height: 360px; padding: 8rem 0 3rem; }

 .ficha-tratamiento__hero h1 { font-size: clamp(2.55rem,12vw,3.8rem); overflow-wrap: anywhere; }

   .ficha-multimedia__contenido h2 { font-size: 2.6rem; }

 .ficha-resultados .ficha-seccion-cabecera h2 { font-size: clamp(2rem,8.5vw,2.7rem); }

 .ficha-resenas .ficha-seccion-cabecera h2 { font-size: 2.5rem; }

 .ficha-caso .comparador__rotulo--despues { right: 10px; }

 .ficha-tratamiento__cta h2 span,.ficha-tratamiento__cta h2 em { white-space: normal; }

}



/* Title and description share the hero; the title fits on one line. */

.ficha-tratamiento__hero h1 { max-width: 100%; width: 100%; white-space: nowrap; overflow-wrap: normal; }

.ficha-tratamiento__hero h1 span,

.ficha-tratamiento__hero h1 em { display: inline; }

.ficha-tratamiento__hero h1 [data-ficha-title-line] { display: inline-block; white-space: nowrap; }

.ficha-tratamiento__hero h1 em { margin: 0; }

.ficha-tratamiento__hero-descripcion {

 max-width: 54ch;

 margin: 1.5rem auto 0;

 font-family: var(--fuente-texto);

 font-size: clamp(1.05rem,1.6vw,1.4rem);

 font-weight: 400;

 line-height: 1.55;

 letter-spacing: normal;

 color: #f9ebd3;

 text-align: center;

 text-wrap: pretty;

}

@media(max-width:560px) {

 .ficha-tratamiento__hero-descripcion { font-size: 1.05rem; margin-top: 1.25rem; }

}



/* Play de la presentación, también cuando el video está pendiente. */

.ficha-multimedia__video .video-facade.is-pending{cursor:default}

.ficha-multimedia__video .video-facade.is-pending .video-play:disabled{display:inline-flex;opacity:1;cursor:default;transform:translate(-50%,-50%) scale(1);transition:opacity .2s,transform .2s}

.ficha-multimedia__video .video-facade.is-pending:hover .video-play:disabled,.ficha-multimedia__video .video-facade.is-pending:focus-within .video-play:disabled{opacity:1;transform:translate(-50%,-50%) scale(1)}

@media(hover:none),(pointer:coarse){.ficha-multimedia__video .video-facade.is-pending .video-play:disabled{opacity:1;transform:translate(-50%,-50%)}}

@media(prefers-reduced-motion:reduce){.ficha-multimedia__video .video-facade.is-pending .video-play:disabled{transition:none}}


/* Acceso discreto a la explicación del caso. */
.ficha-caso__foto{position:relative}
.ficha-caso__foto .ficha-caso__ver-mas{position:absolute;right:16px;bottom:16px;z-index:10;display:grid;place-items:center;justify-content:center;width:40px;height:40px;min-width:40px;margin:0;padding:0;gap:0;border:0;border-radius:50%;background:var(--crema);color:var(--verde-900);box-shadow:0 2px 8px rgba(0,0,0,.12);transition:background-color .2s,transform .2s}
.ficha-caso__foto .ficha-caso__ver-mas span:last-child{position:relative;display:block;width:14px;height:14px;border-radius:0;background:transparent;color:inherit;font-size:0;line-height:0}
.ficha-caso__foto .ficha-caso__ver-mas span:last-child::before,.ficha-caso__foto .ficha-caso__ver-mas span:last-child::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;border-radius:1px;background:currentColor;transform:translate(-50%,-50%)}
.ficha-caso__foto .ficha-caso__ver-mas span:last-child::after{transform:translate(-50%,-50%) rotate(90deg)}
.ficha-caso__foto .ficha-caso__ver-mas:hover,.ficha-caso__foto .ficha-caso__ver-mas:focus-visible{background:#fff8e9;color:var(--verde-900);transform:translateY(-1px)}
