/*
Theme Name: Truall Carolina Alliende Child
Theme URI: https://truall.com/
Version: 1.0.0
Description: Child Theme base de Agencia Truall para Divi 4.
Author: Agencia Truall
Author URI: https://truall.com/
Template: Divi
Text Domain: truall-divi-child
*/

/*
 * IMPORTANTE
 * Este archivo se mantiene limpio.
 * Agregar estilos reutilizables en /assets/css/.
 * Agregar estilos propios del proyecto debajo de este comentario solo si son puntuales.
 */


/* =========================================================
   ALTURAS IGUALES EN BLOG
   ========================================================= */

.iguales-fx .et_pb_salvattore_content[data-columns]::before {
	content: '1 .column.size-1of1' !important;
}

@media only screen and (min-width: 981px) {

	.iguales-fx .column.size-1of1 {
		width: 100% !important;
		display: flex;
		flex-wrap: wrap;
	}

	.iguales-fx .column.size-1of1:before {
		display: none;
	}

	.iguales-fx article {
		position: relative;
		width: calc((100% - 6%) / 3);
		margin-top: 3%;
		margin-bottom: 0 !important;
		margin-right: 3%;
	}

	.iguales-fx article:nth-of-type(3n) {
		margin-right: 0;
		margin-bottom: 0 !important;
	}

	.iguales-fx article:nth-child(-n+3) {
		margin-top: 0;
	}
}


/* =========================================================
   CAROLINA ALLIENDE
   CSS MIGRADO DESDE PERSONALIZADOR
   ========================================================= */


/* =========================================================
   FORM WRAPPER
   ========================================================= */

.nf-wrapper {
	min-height: 580px;
	overflow: hidden;
}


/* =========================================================
   VIDEO RESPONSIVE 16:9
   ========================================================= */

.video-wrapper {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
}

.video-wrapper iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}


/* =========================================================
   PAGE LOAD FADE
   ========================================================= */

html.js-loading #page-container {
	opacity: 0;
}

#page-container {
	opacity: 1;
	transition: opacity .28s ease;
	will-change: opacity;
}


/* =========================================================
   TESTIMONIALS SHOWCASE
   FORMULARIO
   ========================================================= */

#ttshowcase_form {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6px 8px;

	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	padding: 10px;

	border: 1px solid rgba(0, 0, 0, .08);
	border-radius: 16px;
	background: rgba(255, 255, 255, .92);
	backdrop-filter: blur(6px);

	font-family: "Open Sans", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
	font-size: 14px;
}


/* =========================================================
   FIELDSETS
   ========================================================= */

#ttshowcase_form fieldset {
	position: relative;
	margin: 0;
	padding: 0 0 18px;
	border: 0;
}


/* Bloques a ancho completo */

#ttshowcase_form .tt_testimonial_fieldset,
#ttshowcase_form .tt_rating_fieldset,
#ttshowcase_form .tt_captcha_fieldset,
#ttshowcase_form .tt_consent_fieldset,
#ttshowcase_form button.tt_form_button {
	grid-column: 1 / -1;
}


/* Espacio adicional para errores */

#ttshowcase_form .tt_testimonial_fieldset,
#ttshowcase_form .tt_rating_fieldset,
#ttshowcase_form .tt_consent_fieldset {
	padding-bottom: 22px;
}


/* =========================================================
   LABELS
   ========================================================= */

#ttshowcase_form label {
	display: block;
	width: auto !important;
	margin: 0 0 3px;

	font-size: 13px;
	font-weight: 600;
	letter-spacing: .2px;
	color: rgba(0, 0, 0, .72);
}


/* =========================================================
   INPUTS
   ========================================================= */

#ttshowcase_form input[type="text"],
#ttshowcase_form input[type="email"],
#ttshowcase_form textarea {
	width: 100%;
	padding: 7px 10px;

	border: 1px solid rgba(0, 0, 0, .12);
	border-radius: 999px;
	background: rgba(0, 0, 0, .02);

	outline: none;

	font-size: 14px;
	line-height: 1.25;

	transition:
		border-color .15s ease,
		box-shadow .15s ease,
		background .15s ease;
}

#ttshowcase_form textarea {
	min-height: 76px;
	border-radius: 14px;
	resize: vertical;
	font-size: 15px;
}

#ttshowcase_form input:focus,
#ttshowcase_form textarea:focus {
	background: rgba(255, 255, 255, 1);
	border-color: rgba(100, 163, 188, .75);
	box-shadow: 0 0 0 4px rgba(100, 163, 188, .16);
}

#ttshowcase_form ::placeholder {
	color: rgba(0, 0, 0, .35);
}


/* =========================================================
   RATING
   ========================================================= */

#ttshowcase_form .tt_rating {
	display: flex;
	flex-direction: row-reverse;
	justify-content: flex-start;
	gap: 6px;
	padding-top: 2px;
}

#ttshowcase_form .tt_rating input[type="radio"] {
	position: absolute;
	left: -9999px;
}

#ttshowcase_form .tt_rating label {
	margin: 0;
	cursor: pointer;
}

#ttshowcase_form .tt_rating label i {
	font-size: 18px;
	color: rgba(0, 0, 0, .22);

	transition:
		color .15s ease,
		transform .15s ease,
		filter .15s ease;
}

#ttshowcase_form .tt_rating label:hover i {
	color: #f5b301;
	transform: translateY(-1px);
	filter: drop-shadow(0 2px 2px rgba(0, 0, 0, .08));
}

#ttshowcase_form .tt_rating input[type="radio"]:checked ~ label i {
	color: #f5b301;
	filter: drop-shadow(0 2px 2px rgba(0, 0, 0, .08));
}


/* =========================================================
   CAPTCHA
   ========================================================= */

#ttshowcase_form .tt_captcha_fieldset {
	display: none !important;
}


/* =========================================================
   CONSENTIMIENTO
   ========================================================= */

#ttshowcase_form .tt_consent_fieldset {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 10px;

	margin-top: 2px;

	font-size: 12px;
	color: rgba(0, 0, 0, .7);
}

#ttshowcase_form .tt_consent_fieldset input[type="checkbox"] {
	margin-top: 2px;
}

#ttshowcase_form .tt_consent_fieldset label {
	flex: 1 1 calc(100% - 28px);
}


/* =========================================================
   VALIDACIÓN
   ========================================================= */

.ttshowcase_form_error {
	display: none !important;
}

#ttshowcase_form .tt_error,
#ttshowcase_form .error,
#ttshowcase_form span.error,
#ttshowcase_form .ttshowcase_error {
	position: absolute;
	left: 0;
	bottom: 2px;

	display: block;

	margin: 6px 0 0 !important;
	padding: 0 !important;

	font-size: 12.5px;
	font-weight: 600;
	line-height: 1.2;

	color: #457486 !important;
	white-space: nowrap;
}

#ttshowcase_form .tt_consent_fieldset .tt_error,
#ttshowcase_form .tt_consent_fieldset .error {
	padding-left: 28px !important;
}


/* =========================================================
   BOTÓN
   ========================================================= */

#ttshowcase_form button.tt_form_button {
	width: 100%;
	padding: 11px 14px;

	border: 0;
	border-radius: 14px;

	font-size: 14px;
	font-weight: 800;
	letter-spacing: .4px;

	cursor: pointer;

	transition:
		transform .12s ease,
		filter .12s ease;
}

#ttshowcase_form button.tt_form_button:hover {
	transform: translateY(-1px);
	filter: brightness(1.02);
}

#ttshowcase_form button.tt_form_button:active {
	transform: translateY(0);
}


/* Desktop */

@media (min-width: 641px) {

	#ttshowcase_form button.tt_form_button {
		height: 44px;
		padding: 0 22px;

		border-radius: 12px;

		background: #457486;
		color: #fff;

		font-size: 14px;
		font-weight: 700;
		letter-spacing: .3px;

		box-shadow: none;

		appearance: none;
		-webkit-appearance: none;
	}

	#ttshowcase_form button.tt_form_button:hover {
		filter: brightness(1.05);
	}

	#ttshowcase_form button.tt_form_button:active {
		transform: translateY(1px);
	}
}


/* Mobile */

@media (max-width: 640px) {

	#ttshowcase_form {
		grid-template-columns: 1fr;
	}

}


/* =========================================================
   TESTIMONIOS
   ========================================================= */

/* Ocultar avatar */

.ttshowcase_avatar,
.ttshowcase_img,
.ttshowcase_image,
.ttshowcase_photo,
.ttshowcase_thumbnail,
.ttshowcase_rl_avatar,
.ttshowcase_rl_img {
	display: none !important;
}


/* Evitar reacomodo inicial */

.ttshowcase_wrap,
.ttshowcase_rl_wrap {
	min-height: 320px;
}


/* =========================================================
   DIVI - DOS COLUMNAS EN MÓVIL
   ========================================================= */

@media (max-width: 767px) {

	.dos-columnas-movil {
		display: flex;
		flex-wrap: wrap;
	}

	.dos-columnas-movil .et_pb_column {
		width: 50% !important;
		margin-bottom: 20px;
	}

}


/* =====================================================
   CAROLINA ALLIENDE
   ÁREAS DE PRÁCTICA – HERO
   ===================================================== */

:root {
	--tr-area-dark: #243438;
	--tr-area-accent: #c96a4b;
	--tr-area-sage: #7a9e9a;
	--tr-area-sage-light: #e7efec;
	--tr-area-background: #f7f4ef;
	--tr-area-text: #252b2d;
	--tr-area-text-secondary: #5b6264;
	--tr-area-white: #ffffff;
}


/* =====================================================
   SECCIÓN
   ===================================================== */

.tr_area_hero {
	padding: 0 0 55px !important;
	background: var(--tr-area-background);
	overflow: hidden;
}


/* =====================================================
   FILA FULL WIDTH
   ===================================================== */

.tr_area_hero_row {
	display: flex !important;
	align-items: stretch !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;
	padding: 0 !important;

	overflow: visible !important;
}


/* Neutralizar gutters Divi */

.tr_area_hero_row > .et_pb_column {
	margin: 0 !important;
}


/* =====================================================
   COLUMNA IZQUIERDA – 48%
   ===================================================== */

.tr_area_hero_copy {
	flex: 0 0 48% !important;

	width: 48% !important;
	max-width: 48% !important;

	display: flex !important;
	flex-direction: column;
	justify-content: center;

	margin: 0 !important;

	padding:
		70px
		65px
		65px
		clamp(55px, 5vw, 110px) !important;

	z-index: 2;
}


/* =====================================================
   KICKER / ETIQUETA EDITORIAL
   ===================================================== */

.tr_area_hero_kicker {
	margin-bottom: 0 !important;
	padding-bottom: 25px !important;
}

.tr_area_hero_kicker p {
	display: inline-block;

	/*
	 * La línea queda a la izquierda del eje del H1,
	 * mientras el texto mantiene la misma alineación óptica.
	 */
	margin: 0 0 0 -14px;
	padding: 2px 0 2px 11px !important;

	font-size: 12px;
	font-weight: 700;
	line-height: 1.15;

	letter-spacing: .07em;
	text-transform: uppercase;

	color: var(--tr-area-accent);
	background: transparent;

	border: 0;
	border-left: 3px solid var(--tr-area-accent);
	border-radius: 0;
}

.tr_area_hero_kicker:after {
	display: none;
}


/* =====================================================
   H1
   ===================================================== */

.tr_area_hero_title {
	margin-bottom: 22px;
}

.tr_area_hero_title h1 {
	margin: 0;
	padding: 0;

	font-size: clamp(42px, 3.2vw, 55px);
	line-height: 1.08;

	font-weight: 300;
	letter-spacing: -0.025em;

	color: var(--tr-area-text);
}

.tr_area_hero_title h1 strong {
	font-weight: 700;
}


/* =====================================================
   INTRO
   ===================================================== */

.tr_area_hero_intro {
	max-width: 590px;
	margin-bottom: 25px;
}

.tr_area_hero_intro p {
	margin: 0 0 15px;
	padding: 0;

	font-size: 16px;
	line-height: 1.68;

	color: var(--tr-area-text-secondary);
}

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

.tr_area_hero_intro strong {
	color: var(--tr-area-text);
}


/* =====================================================
   COLUMNA DERECHA – 52%
   ===================================================== */

.tr_area_hero_media {
	position: relative;

	flex: 0 0 52% !important;

	width: 52% !important;
	max-width: 52% !important;

	min-height: 540px;

	margin: 0 !important;
	padding: 0 !important;

	overflow: visible !important;
}


/* =====================================================
   IMAGEN
   ===================================================== */

.tr_area_hero_image {
	position: absolute !important;

	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;

	width: 100% !important;
	max-width: none !important;
	height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;

	transform: none !important;

	overflow: hidden;

	border-radius: 0 0 0 90px;
}


/* Wrapper módulo Imagen Divi */

.tr_area_hero_image .et_pb_image_wrap {
	display: block !important;

	width: 100% !important;
	max-width: none !important;
	height: 100% !important;

	margin: 0 !important;
	padding: 0 !important;
}


/* Imagen */

.tr_area_hero_image img {
	display: block !important;

	width: 100% !important;
	max-width: none !important;
	height: 100% !important;

	margin: 0 !important;

	object-fit: cover;
	object-position: center center;
}


/* =====================================================
   TARJETA
   ===================================================== */

.tr_area_hero_card {
	position: absolute !important;
	z-index: 5;

	right: 55px;
	bottom: -22px;

	width: min(445px, 82%);

	margin: 0 !important;

	padding:
		23px
		27px
		22px
		82px;

	background: var(--tr-area-sage-light);

	border-radius: 12px;

	box-shadow:
		inset 4px 0 0 var(--tr-area-accent),
		0 18px 38px rgba(36, 52, 56, .18);
}


/* =====================================================
   ICONO BALANZA
   ===================================================== */

.tr_area_hero_card:before {
	content: "";

	position: absolute;

	left: 22px;
	top: 23px;

	width: 42px;
	height: 42px;

	border-radius: 50%;

	background-color: var(--tr-area-dark);

	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c96a4b' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v18M5 6h14M8 6l-4 7h8L8 6M16 6l-4 7h8l-4-7M4 13a4 4 0 0 0 8 0M12 13a4 4 0 0 0 8 0M8 21h8'/%3E%3C/svg%3E");

	background-repeat: no-repeat;
	background-position: center;
	background-size: 23px 23px;

	box-shadow:
		0 4px 10px rgba(36, 52, 56, .16);
}


/* =====================================================
   TEXTO TARJETA
   ===================================================== */

.tr_area_hero_card p {
	margin: 0 0 9px;
	padding: 0;

	font-size: 13.5px;
	line-height: 1.55;

	color: var(--tr-area-dark);
}

.tr_area_hero_card p:first-child {
	font-weight: 500;
}

.tr_area_hero_card p:last-child {
	margin-bottom: 0;

	font-weight: 700;
	color: var(--tr-area-dark);
}

.tr_area_hero_card strong {
	font-weight: 700;
	color: var(--tr-area-dark);
}


/* =====================================================
   TABLET
   ===================================================== */

@media (max-width: 980px) {

	.tr_area_hero {
		padding: 0 0 50px !important;
		background: var(--tr-area-background);
	}


	.tr_area_hero_row {
		display: block !important;

		width: 100% !important;
		max-width: none !important;
	}


	.tr_area_hero_copy,
	.tr_area_hero_media {
		width: 100% !important;
		max-width: 100% !important;
		flex: none !important;
	}


	.tr_area_hero_copy {
		padding:
			45px
			6%
			42px !important;
	}


	.tr_area_hero_title h1 {
		font-size: clamp(40px, 7vw, 52px);
	}


	.tr_area_hero_intro {
		max-width: 700px;
	}


	.tr_area_hero_media {
		min-height: auto;
		padding: 0 !important;
	}


	.tr_area_hero_image {
		position: relative !important;

		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;

		width: 100% !important;
		max-width: none !important;
		height: 520px !important;

		border-radius: 0 0 0 70px;
	}


	.tr_area_hero_image img {
		object-position: center center;
	}


	.tr_area_hero_card {
		position: relative !important;

		right: auto;
		bottom: auto;

		width: calc(100% - 70px);
		max-width: 560px;

		margin: -35px 35px 0 auto !important;

		padding:
			23px
			25px
			22px
			80px;
	}

}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	.tr_area_hero {
		padding: 0 0 38px !important;
		background: var(--tr-area-background);
	}


	.tr_area_hero_copy {
		padding: 34px 35px 30px !important;
	}


	/* Etiqueta editorial */
	.tr_area_hero_kicker {
		margin-bottom: 0 !important;
		padding-bottom: 21px !important;
	}


	.tr_area_hero_kicker p {
		margin: 0 0 0 -13px;
		padding: 2px 0 2px 10px !important;

		font-size: 11px;
		letter-spacing: .065em;
	}


	.tr_area_hero_title {
		margin-bottom: 20px;
	}


	.tr_area_hero_title h1 {
		font-size: 38px;
		line-height: 1.1;
	}


	.tr_area_hero_intro {
		margin-bottom: 24px;
	}


	.tr_area_hero_intro p {
		font-size: 15px;
		line-height: 1.65;
	}


	/* FOTO EDGE TO EDGE */

	.tr_area_hero_image {
		width: 100% !important;
		max-width: none !important;
		height: 430px !important;

		border-radius: 0 0 0 52px;
	}


	.tr_area_hero_image img {
		object-position: center center;
	}


	/* CARD MÓVIL */

	.tr_area_hero_card {
		width: calc(100% - 36px);
		max-width: none;

		margin: -24px 18px 0 !important;

		padding:
			20px
			19px
			19px
			70px;

		border-radius: 10px;

		box-shadow:
			inset 4px 0 0 var(--tr-area-accent),
			0 12px 28px rgba(36, 52, 56, .16);
	}


	.tr_area_hero_card:before {
		left: 16px;
		top: 20px;

		width: 39px;
		height: 39px;

		background-size: 21px 21px;
	}


	.tr_area_hero_card p {
		font-size: 14px;
		line-height: 1.5;
	}

}
.tr_area_section {
	padding: 70px clamp(55px, 5vw, 110px) !important;
}

.tr_area_section > .et_pb_row {
	width: 100% !important;
	max-width: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

@media (max-width: 980px) {
	.tr_area_section {
		padding: 55px 6% !important;
	}
}

@media (max-width: 767px) {
	.tr_area_section {
		padding-top: 42px !important;
		padding-bottom: 42px !important;
		padding-left: 35px !important;
		padding-right: 35px !important;
	}
}
/* =====================================================
   FRANJA EXPERIENCIA / CASO DESTACADO
   ===================================================== */

.tr_case_band {
	background: #243438 !important;
}

.tr_case_band .et_pb_row {
	width: 100% !important;
	max-width: none !important;
}

/* =========================
   COLUMNA IZQUIERDA
   ========================= */

.tr_case_band h2,
.tr_case_band h3,
.tr_case_band p {
	color: #ffffff;
}

.tr_case_band h2 {
	margin: 0 0 16px;
	font-size: clamp(28px, 2.2vw, 36px);
	line-height: 1.15;
	font-weight: 400;
}

.tr_case_band h2 span {
	color: #c96a4b;
	font-weight: 700;
}

.tr_case_band .et_pb_text:first-child p {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.88);
}


/* =========================
   CARD CASO DESTACADO
   ========================= */

.tr_case_card {
	padding: 24px;
	border: 1px solid rgba(201, 106, 75, 0.42);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.025);
}

.tr_case_card_kicker {
	margin-bottom: 7px;
	font-size: 11px;
	line-height: 1.2;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #c96a4b;
}

.tr_case_card h3 {
	margin: 0 0 18px;
	padding: 0;
	font-size: 24px;
	line-height: 1.2;
	font-weight: 400;
	color: #ffffff;
}


/* =========================
   INDICADORES
   ========================= */

.tr_case_stats {
	display: flex;
	align-items: stretch;
	gap: 0;
	margin-bottom: 18px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.tr_case_stat {
	flex: 1 1 33.333%;
	min-width: 0;
	padding: 18px 14px;
}

.tr_case_stat + .tr_case_stat {
	border-left: 1px solid rgba(255, 255, 255, 0.08);
}


/* =========================
   ICONOS
   ========================= */

.tr_case_icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	margin-bottom: 10px;
	border-radius: 50%;
	background: rgba(201, 106, 75, 0.12);
	color: #c96a4b;
}

.tr_case_icon svg {
	display: block;
	width: 24px;
	height: 24px;
}


/* =========================
   NÚMEROS / RESULTADOS
   ========================= */

.tr_case_value {
	margin-bottom: 5px;
	font-size: 26px;
	line-height: 1.1;
	font-weight: 700;
	color: #c96a4b;
}

.tr_case_label {
	font-size: 14px;
	line-height: 1.45;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.9);
}


/* =========================
   TEXTO INFERIOR
   ========================= */

.tr_case_note {
	margin: 0;
	font-size: 14px;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.82);
}


/* =====================================================
   TABLET
   ===================================================== */

@media (max-width: 980px) {

	.tr_case_band h2 {
		font-size: 30px;
	}

	.tr_case_band .et_pb_text:first-child p {
		font-size: 15px;
	}

	.tr_case_card {
		margin-top: 28px;
		padding: 22px;
	}

	.tr_case_card h3 {
		font-size: 23px;
	}

	.tr_case_value {
		font-size: 24px;
	}

	.tr_case_label {
		font-size: 13px;
	}

}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	.tr_case_card {
		margin-top: 16px;
		padding: 18px;
		border-radius: 10px;
	}

	.tr_case_card_kicker {
		font-size: 10px;
		margin-bottom: 6px;
	}

	.tr_case_card h3 {
		margin-bottom: 14px;
		font-size: 21px;
	}

	.tr_case_stats {
		flex-direction: column;
		margin-bottom: 14px;
	}

	.tr_case_stat {
		display: grid;
		grid-template-columns: 42px 1fr;
		grid-template-rows: auto auto;
		column-gap: 14px;
		width: 100%;
		padding: 14px 0;
		text-align: left;
	}

	.tr_case_stat + .tr_case_stat {
		border-left: 0;
		border-top: 1px solid rgba(255, 255, 255, 0.08);
	}

	.tr_case_icon {
		grid-column: 1;
		grid-row: 1 / 3;
		align-self: center;
		width: 40px;
		height: 40px;
		margin: 0;
	}

	.tr_case_icon svg {
		width: 21px;
		height: 21px;
	}

	.tr_case_value {
		grid-column: 2;
		grid-row: 1;
		margin: 0 0 3px;
		font-size: 24px;
		line-height: 1.1;
	}

	.tr_case_label {
		grid-column: 2;
		grid-row: 2;
		font-size: 13px;
		line-height: 1.4;
	}

	.tr_case_label br {
		display: none;
	}

	.tr_case_note {
		font-size: 13px;
		line-height: 1.5;
	}

}
/* =====================================================
   TIPOGRAFÍA – ÁREAS DE PRÁCTICA
   ===================================================== */

/* H1 – HERO */
.tr_area_hero h1 {
	font-size: clamp(42px, 3.2vw, 55px);
	line-height: 1.08;
}

/* H2 – SECCIONES */
.tr_area_section h2 {
	font-size: clamp(34px, 2.5vw, 38px);
	line-height: 1.15;
}

/* H3 – SUBTÍTULOS / CARDS */
.tr_area_section h3 {
	font-size: clamp(22px, 1.6vw, 24px);
	line-height: 1.2;
}


/* =====================================================
   TABLET
   ===================================================== */

@media (max-width: 980px) {

	.tr_area_hero h1 {
		font-size: 42px;
	}

	.tr_area_section h2 {
		font-size: 32px;
	}

	.tr_area_section h3 {
		font-size: 22px;
	}

}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	.tr_area_hero h1 {
		font-size: 38px;
		line-height: 1.1;
	}

	.tr_area_section h2 {
		font-size: 29px;
		line-height: 1.18;
	}

	.tr_area_section h3 {
		font-size: 21px;
		line-height: 1.22;
	}

}
/* =====================================================
   FAQ – ACORDEÓN ÁREAS DE PRÁCTICA
   ===================================================== */

.tr_faq_accordion {
	border-top: 1px solid rgba(36, 52, 56, 0.14);
}

/* Cada pregunta */
.tr_faq_accordion .et_pb_accordion_item {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(36, 52, 56, 0.14) !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* Título */
.tr_faq_accordion .et_pb_toggle_title {
	position: relative;
	padding: 17px 38px 17px 0 !important;
	font-size: 16px !important;
	line-height: 1.4 !important;
	font-weight: 500 !important;
	color: #252b2d !important;
	cursor: pointer;
}

/* Ocultamos el icono nativo de Divi */
.tr_faq_accordion .et_pb_toggle_title::before {
	display: none !important;
}

/* Chevron personalizado */
.tr_faq_accordion .et_pb_toggle_title::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 4px;
	width: 7px;
	height: 7px;
	border-right: 1.5px solid #c96a4b;
	border-bottom: 1.5px solid #c96a4b;
	transform: translateY(-65%) rotate(45deg);
	transition: transform 0.2s ease;
}

/* Chevron cuando está abierto */
.tr_faq_accordion .et_pb_toggle_open .et_pb_toggle_title::after {
	transform: translateY(-30%) rotate(225deg);
}

/* Respuesta */
.tr_faq_accordion .et_pb_toggle_content {
	padding: 0 38px 18px 0 !important;
	font-size: 15px !important;
	line-height: 1.65 !important;
	color: #5b6264 !important;
}

/* Eliminar espacios internos que mete Divi */
.tr_faq_accordion .et_pb_toggle_content p:last-child {
	padding-bottom: 0 !important;
}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	.tr_faq_accordion .et_pb_toggle_title {
		padding: 15px 34px 15px 0 !important;
		font-size: 15px !important;
		line-height: 1.4 !important;
	}

	.tr_faq_accordion .et_pb_toggle_content {
		padding: 0 34px 16px 0 !important;
		font-size: 14px !important;
		line-height: 1.6 !important;
	}

}
/* =====================================================
   NORMATIVA RELEVANTE
   ===================================================== */

.tr_normativa {
	padding: 26px 28px;
	background: #f7f4ef;
	border-radius: 10px;
}

.tr_normativa h4 {
	margin: 0 0 16px;
	padding: 0;
	font-size: 17px;
	line-height: 1.3;
	font-weight: 700;
	color: #243438;
}

.tr_normativa ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.tr_normativa li {
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid rgba(36, 52, 56, 0.10);
}

.tr_normativa li:last-child {
	border-bottom: 0;
}

.tr_normativa a {
	position: relative;
	display: block;
	padding: 10px 26px 10px 0;
	font-size: 14px;
	line-height: 1.4;
	font-weight: 400;
	color: #252b2d;
	transition: color 0.2s ease;
}

.tr_normativa a::after {
	content: "\2197\FE0E";
	position: absolute;
	top: 50%;
	right: 2px;
	transform: translateY(-50%);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	color: #c96a4b;
}

.tr_normativa a:hover {
	color: #c96a4b;
}


/* MÓVIL */
@media (max-width: 767px) {

	.tr_normativa {
		padding: 22px;
	}

	.tr_normativa h4 {
		font-size: 16px;
	}

	.tr_normativa a {
		padding: 10px 24px 10px 0;
		font-size: 14px;
	}

}
/* =====================================================
   ÁREAS DE PRÁCTICA – SUPREME CARDS
   ESTRUCTURA REAL CONFIRMADA
   ===================================================== */


/* =====================================================
   ESCRITORIO
   ===================================================== */

/* Filas dentro de la sección de cards */
.tr_practice_cards_section > .et_pb_row {
	padding-top: 0 !important;
	padding-bottom: 0 !important;

	margin-top: 0 !important;
	margin-bottom: 40px !important;
}

/* La última fila no deja espacio extra abajo */
.tr_practice_cards_section > .et_pb_row:last-child {
	margin-bottom: 0 !important;
}


/* -----------------------------------------------------
   COLUMNAS
   ----------------------------------------------------- */

.tr_practice_cards_section > .et_pb_row > .et_pb_column {
	display: flex;
	flex-direction: column;
}


/* -----------------------------------------------------
   SUPREME CARD
   ----------------------------------------------------- */

.tr_practice_cards_section .tr_practice_card {
	flex: 1 1 auto;

	width: 100%;
	height: 100%;

	margin-bottom: 0 !important;
}


/* Estructura interna real de Supreme */
.tr_practice_cards_section .tr_practice_card .et_pb_module_inner {
	display: flex;
	flex-direction: column;

	height: 100%;
}


/* Imagen */
.tr_practice_cards_section .tr_practice_card .dsm_card_image_wrapper {
	flex: 0 0 auto;
}


/* Contenedor de título + descripción */
.tr_practice_cards_section .tr_practice_card .dsm_card_wrapper {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}


/* -----------------------------------------------------
   TÍTULOS
   ----------------------------------------------------- */

/*
 * En el DOM vimos que el título de 3 líneas ocupa 79.2px.
 * Reservamos exactamente ese espacio en escritorio.
 *
 * Resultado:
 * títulos de 1, 2 o 3 líneas pueden variar,
 * pero TODAS las descripciones comienzan a la misma altura.
 */
.tr_practice_cards_section .tr_practice_card .dsm_card_title {
	min-height: 79.2px !important;
	height: auto !important;

	margin-top: 0 !important;
	margin-bottom: 16px !important;
}


/* -----------------------------------------------------
   DESCRIPCIÓN
   ----------------------------------------------------- */

.tr_practice_cards_section .tr_practice_card .dsm_card_description {
	margin-top: 0 !important;
}

.tr_practice_cards_section .tr_practice_card .dsm_card_description p:first-child {
	margin-top: 0 !important;
}

.tr_practice_cards_section .tr_practice_card .dsm_card_description p:last-child {
	padding-bottom: 0 !important;
}


/* =====================================================
   TABLET
   ===================================================== */

@media (max-width: 980px) {

	/*
	 * En tablet dejamos que los títulos respiren naturalmente.
	 * Ya no estamos en la grilla desktop de 4 columnas.
	 */
	.tr_practice_cards_section .tr_practice_card .dsm_card_title {
		min-height: 0 !important;
		height: auto !important;
	}

}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	/* ---------------------------------------------
	   FILAS
	   --------------------------------------------- */

	.tr_practice_cards_section > .et_pb_row {
		display: block !important;

		padding-top: 0 !important;
		padding-bottom: 0 !important;

		margin-top: 0 !important;
		margin-bottom: 28px !important;
	}

	.tr_practice_cards_section > .et_pb_row:last-child {
		margin-bottom: 0 !important;
	}


	/* ---------------------------------------------
	   COLUMNAS / CARDS
	   --------------------------------------------- */

	.tr_practice_cards_section > .et_pb_row > .et_pb_column {
		display: block !important;

		width: 100% !important;

		margin-top: 0 !important;
		margin-right: 0 !important;
		margin-bottom: 28px !important;
		margin-left: 0 !important;
	}

	/*
	 * La última card de una fila no añade espacio.
	 * Los 28px siguientes los aporta la fila.
	 *
	 * Así el salto entre las filas es exactamente
	 * igual al salto entre las cards.
	 */
	.tr_practice_cards_section > .et_pb_row > .et_pb_column:last-child {
		margin-bottom: 0 !important;
	}


	/* ---------------------------------------------
	   ALTURA NATURAL EN MÓVIL
	   --------------------------------------------- */

	.tr_practice_cards_section .tr_practice_card,
	.tr_practice_cards_section .tr_practice_card .et_pb_module_inner,
	.tr_practice_cards_section .tr_practice_card .dsm_card_wrapper {
		height: auto !important;
	}


	/* Títulos naturales en móvil */
	.tr_practice_cards_section .tr_practice_card .dsm_card_title {
		min-height: 0 !important;
		height: auto !important;

		margin-bottom: 16px !important;
	}

}
/* =====================================================
   FIX SUPREME CARDS – ALINEACIÓN DESKTOP
   ===================================================== */

@media (min-width: 981px) {

	/* Contenido siempre parte desde arriba */
	.tr_practice_cards_section .tr_practice_card .dsm_card_wrapper {
		display: flex !important;
		flex-direction: column !important;
		justify-content: flex-start !important;
		align-items: stretch !important;
	}

	/* Espacio uniforme equivalente a 2 líneas de título */
	.tr_practice_cards_section .tr_practice_card .dsm_card_title {
		margin: 0 0 16px !important;
		padding: 0 !important;

		line-height: 1.2 !important;
		min-height: 2.4em !important;
		height: auto !important;
	}

	/* Descripción alineada inmediatamente después */
	.tr_practice_cards_section .tr_practice_card .dsm_card_description {
		margin: 0 !important;
		padding: 0 !important;
	}

	.tr_practice_cards_section .tr_practice_card .dsm_card_description p:first-child {
		margin-top: 0 !important;
	}

}
/* =====================================================
   INTRO PÁGINA – TÍTULO + DESCRIPCIÓN
   ===================================================== */

/*
 * Esta clase controla ESTRUCTURA y valores por defecto.
 * No bloquea las opciones tipográficas de Divi.
 */

.tr_page_intro_row {
	display: flex;
	align-items: flex-start;
	width: 100%;
}


/* =====================================================
   COLUMNAS
   ===================================================== */

.tr_page_intro_row > .et_pb_column {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}


/* =====================================================
   H1
   ===================================================== */

/*
 * Valor por defecto.
 * Sin !important para que Divi pueda sobrescribirlo
 * cuando usted cambie el tamaño desde el módulo.
 */
.tr_page_intro_row h1 {
	margin: 0;
	padding: 0;

	font-size: clamp(42px, 3.2vw, 55px);
	line-height: 1.08;
}


/* Línea terracota bajo el H1 */
.tr_page_intro_row h1::after {
	content: "";
	display: block;

	width: 58px;
	height: 3px;

	margin-top: 22px;

	background: #c96a4b;
}


/* =====================================================
   TEXTO INTRODUCTORIO – COLUMNA DERECHA
   ===================================================== */

/*
 * IMPORTANTE:
 * Ya NO tocamos todos los <p> de la fila.
 *
 * Solo damos un valor por defecto a módulos de texto
 * ubicados en la segunda columna.
 *
 * Esto mantiene la página Áreas de práctica como estaba,
 * pero permite que Contacto y cualquier texto de la
 * primera columna sean editables normalmente desde Divi.
 */
.tr_page_intro_row
> .et_pb_column:nth-child(2)
.et_pb_text p {
	font-size: 18px;
	line-height: 1.65;
}

.tr_page_intro_row
> .et_pb_column:nth-child(2)
.et_pb_text p:first-child {
	margin-top: 0;
}

.tr_page_intro_row
> .et_pb_column:nth-child(2)
.et_pb_text p:last-child {
	padding-bottom: 0;
}


/* =====================================================
   KICKER PÁGINAS INTERIORES
   ===================================================== */

/*
 * Ejemplo:
 * CONTACTO
 *
 * Esta clase puede ponerse en un módulo Texto.
 */
.tr_page_kicker {
	margin: 0 0 28px !important;
	padding: 2px 0 2px 11px !important;

	border-left: 3px solid #c96a4b;

	color: #c96a4b;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: .07em;
	text-transform: uppercase;
}


/*
 * Neutralizamos únicamente la etiqueta interna que
 * pueda generar Divi: p, div, span, etc.
 */
.tr_page_kicker > *,
.tr_page_kicker .et_pb_text_inner,
.tr_page_kicker .et_pb_text_inner > * {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;

	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}


/* =====================================================
   TABLET
   ===================================================== */

@media (max-width: 980px) {

	.tr_page_intro_row {
		display: block;
	}

	.tr_page_intro_row > .et_pb_column {
		display: block;
	}

	.tr_page_intro_row h1 {
		font-size: 42px;
		line-height: 1.08;
		margin-bottom: 30px;
	}

	.tr_page_intro_row h1::after {
		width: 52px;
		height: 3px;
		margin-top: 18px;
	}

	.tr_page_intro_row
	> .et_pb_column:nth-child(2)
	.et_pb_text p {
		font-size: 17px;
		line-height: 1.65;
	}

	.tr_page_kicker {
		margin-bottom: 24px !important;
		font-size: 12px;
	}

}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	.tr_page_intro_row h1 {
		font-size: 38px;
		line-height: 1.1;
		margin-bottom: 26px;
	}

	.tr_page_intro_row h1::after {
		width: 46px;
		height: 3px;
		margin-top: 16px;
	}

	.tr_page_intro_row
	> .et_pb_column:nth-child(2)
	.et_pb_text p {
		font-size: 16px;
		line-height: 1.6;
	}

	.tr_page_kicker {
		margin-bottom: 22px !important;
		font-size: 11px;
	}

}
/* Intro principal – ajuste de espacio inferior */
.tr_area_section.tr_page_intro_section {
	padding-bottom: 40px !important;
}

@media (max-width: 980px) {
	.tr_area_section.tr_page_intro_section {
		padding-bottom: 36px !important;
	}
}

@media (max-width: 767px) {
	.tr_area_section.tr_page_intro_section {
		padding-bottom: 30px !important;
	}
}
/* =====================================================
   HERO ÁREAS – SUPREME BUTTONS MÓVIL
   Compactar sin alterar iconos
   ===================================================== */

@media (max-width: 767px) {

	/* Evita el salto entre botones */
	.tr_area_hero .dsm_button {
		white-space: nowrap;
	}

	/* Solo reducimos escala y separación */
	.tr_area_hero .dsm_button .et_pb_button_one,
	.tr_area_hero .dsm_button .et_pb_button_two {
		font-size: 16px !important;
		margin-right: 6px !important;
		margin-left: 0 !important;
	}

	.tr_area_hero .dsm_button .et_pb_button_two {
		margin-right: 0 !important;
	}

}
/* =====================================================
   ÁREAS DE PRÁCTICA – ENTRADA SUTIL DE CARDS
   ===================================================== */

/*
 * Por defecto las cards son visibles.
 * Si JavaScript falla, nunca desaparecen.
 */
.tr_practice_cards_section .tr_practice_card {
	opacity: 1;
	transform: none;
}


/* Estado inicial únicamente cuando JS está activo */
.tr_practice_cards_section.tr_cards_animate .tr_practice_card {
	opacity: 0;
	transform: translateY(28px);

	transition:
		opacity 0.72s cubic-bezier(0.22, 1, 0.36, 1),
		transform 0.72s cubic-bezier(0.22, 1, 0.36, 1);

	will-change: opacity, transform;
}


/* Card visible */
.tr_practice_cards_section.tr_cards_animate .tr_practice_card.tr_card_visible {
	opacity: 1;
	transform: translateY(0);
	will-change: auto;
}


/* =====================================================
   STAGGER – SOLO ESCRITORIO
   ===================================================== */

@media (min-width: 981px) {

	.tr_practice_cards_section.tr_cards_animate
	> .et_pb_row
	> .et_pb_column:nth-child(1)
	.tr_practice_card {
		transition-delay: 0ms;
	}

	.tr_practice_cards_section.tr_cards_animate
	> .et_pb_row
	> .et_pb_column:nth-child(2)
	.tr_practice_card {
		transition-delay: 80ms;
	}

	.tr_practice_cards_section.tr_cards_animate
	> .et_pb_row
	> .et_pb_column:nth-child(3)
	.tr_practice_card {
		transition-delay: 160ms;
	}

	.tr_practice_cards_section.tr_cards_animate
	> .et_pb_row
	> .et_pb_column:nth-child(4)
	.tr_practice_card {
		transition-delay: 240ms;
	}

}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	.tr_practice_cards_section.tr_cards_animate .tr_practice_card {
		transform: translateY(20px);

		transition:
			opacity 0.62s cubic-bezier(0.22, 1, 0.36, 1),
			transform 0.62s cubic-bezier(0.22, 1, 0.36, 1);

		transition-delay: 0ms !important;
	}

	.tr_practice_cards_section.tr_cards_animate
	.tr_practice_card.tr_card_visible {
		transform: translateY(0);
	}

}


/* =====================================================
   ACCESIBILIDAD
   ===================================================== */

@media (prefers-reduced-motion: reduce) {

	.tr_practice_cards_section .tr_practice_card {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

}
/* =====================================================
   CTA ÁREAS – VERSIÓN FINAL
   ===================================================== */

.tr_area_cta {
	position: relative;
	overflow: hidden;
	isolation: isolate;

	background: #c96a4b !important;
}


/* =====================================================
   DETALLE GRÁFICO – DESKTOP
   ===================================================== */

.tr_area_cta::after {
	content: "";
	position: absolute;
	z-index: 1;

	top: 0;
	right: 0;

	width: 28%;
	height: 100%;

	background: rgba(36, 52, 56, 0.075);

	clip-path: polygon(
		26% 0,
		100% 0,
		100% 100%,
		0 100%
	);

	pointer-events: none;
}


/* Contenido siempre por encima */
.tr_area_cta > .et_pb_row {
	position: relative;
	z-index: 2;
}


/* =====================================================
   TABLET
   ===================================================== */

@media (max-width: 980px) {

	.tr_area_cta::after {
		width: 34%;
		background: rgba(36, 52, 56, 0.065);
	}

}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	/*
	 * En móvil el detalle queda solo en la
	 * esquina inferior derecha.
	 * No cruza título ni párrafo.
	 */
	.tr_area_cta::after {
		top: auto;
		right: 0;
		bottom: 0;

		width: 46%;
		height: 38%;

		background: rgba(36, 52, 56, 0.07);

		clip-path: polygon(
			32% 0,
			100% 0,
			100% 100%,
			0 100%
		);
	}

}
/* =====================================================
   TÍTULOS DE SECCIÓN – LÍNEA TERRACOTA
   ===================================================== */

.tr_section_title h2 {
	margin: 0 !important;
	padding: 0 !important;
}

.tr_section_title h2::after {
	content: "";
	display: block;

	width: 58px;
	height: 3px;

	margin-top: 18px;

	background: #c96a4b;
}

@media (max-width: 767px) {

	.tr_section_title h2::after {
		width: 46px;
		margin-top: 15px;
	}

}
/* =====================================================
   CARD HERO – PERFIL CAROLINA
   ===================================================== */

.tr_profile_hero_card p:first-child {
	font-weight: 700 !important;
}

.tr_profile_hero_card p:last-child:not(:first-child) {
	font-weight: 400 !important;
}
/* =====================================================
   PERFIL CAROLINA – LISTAS EDITORIALES
   ===================================================== */

.tr_profile_list ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.tr_profile_list li {
	position: relative;
	margin: 0 0 12px !important;
	padding: 0 0 0 20px !important;

	font-size: 16px;
	line-height: 1.6;
}

.tr_profile_list li::before {
	content: "";
	position: absolute;

	left: 0;
	top: 0.75em;

	width: 8px;
	height: 2px;

	background: #c96a4b;
}

.tr_profile_list li:last-child {
	margin-bottom: 0 !important;
}
/* =====================================================
   ENTRADAS – ELIMINAR ESPACIO ANTES DEL FOOTER
   ===================================================== */

body.single-post #left-area {
	padding-bottom: 0 !important;
}

body.single-post article.et_pb_post {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}
/* =====================================================
   DIVI – 2 MÓDULOS EN LÍNEA
   ===================================================== */

.tr_modules_grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 28px;
}

/* Todo lo demás ocupa el ancho completo */
.tr_modules_grid > .et_pb_module {
	grid-column: 1 / -1;
	width: 100% !important;
}

/* Solo estos módulos se reparten las columnas */
.tr_modules_grid > .tr_module_2col {
	grid-column: auto;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}


/* MÓVIL */
@media (max-width: 767px) {

	.tr_modules_grid {
		display: block !important;
	}

	.tr_modules_grid > .tr_module_2col {
		margin-bottom: 22px !important;
	}

}
/* =====================================================
   HOME – TESTIMONIOS
   ===================================================== */

/* Texto del testimonio */
.tr_home_testimonials .ttshowcase_rl_quote,
.tr_home_testimonials .ttshowcase_rl_quote p {
	font-family: inherit !important;
	font-size: 17px !important;
	font-style: normal !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;

	color: #5b6264 !important;
}


/* Nombre */
.tr_home_testimonials .ttshowcase_rl_title,
.tr_home_testimonials .ttshowcase_rl_title.reviewer {
	margin-top: 18px !important;

	font-family: inherit !important;
	font-size: 15px !important;
	font-style: normal !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;

	color: #243438 !important;
}


/* Comillas */
.tr_home_testimonials .ttshowcase_rl_quote::before,
.tr_home_testimonials .ttshowcase_rl_quote i {
	color: #c96a4b !important;
	opacity: .42 !important;
}


/* Espacio interno entre las 3 columnas */
.tr_home_testimonials .ttshowcase_rl_box {
	padding-left: 18px !important;
	padding-right: 28px !important;
}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	.tr_home_testimonials .ttshowcase_rl_box {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-bottom: 34px !important;
	}

	.tr_home_testimonials .ttshowcase_rl_quote,
	.tr_home_testimonials .ttshowcase_rl_quote p {
		font-size: 16px !important;
		line-height: 1.6 !important;
	}

}
/* =====================================================
   PÁGINA TESTIMONIOS – VERSIÓN FINAL
   ===================================================== */


/* =====================================================
   GRILLA 2 COLUMNAS
   ===================================================== */

.tr_testimonials_page .ttshowcase_rl_box.tt_2cl {
	width: 50% !important;
	margin: 0 !important;

	box-sizing: border-box !important;

	/* Espacio vertical entre testimonios */
	padding-bottom: 54px !important;
}


/* Columna izquierda */
.tr_testimonials_page .ttshowcase_rl_box.tt_2cl:nth-child(odd) {
	padding-left: 0 !important;
	padding-right: 32px !important;
}


/* Columna derecha */
.tr_testimonials_page .ttshowcase_rl_box.tt_2cl:nth-child(even) {
	padding-left: 32px !important;
	padding-right: 0 !important;
}


/* =====================================================
   NOMBRE / INFORMACIÓN
   ===================================================== */

.tr_testimonials_page .ttshowcase_rl_info_wrap {
	margin-bottom: 18px !important;
}

.tr_testimonials_page .ttshowcase_rl_info_wrap,
.tr_testimonials_page .ttshowcase_rl_info_wrap * {
	font-style: normal !important;
}

.tr_testimonials_page .ttshowcase_rl_info_wrap {
	color: #243438 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
}


/* =====================================================
   ESTRELLAS
   ===================================================== */

.tr_testimonials_page .ttshowcase_rl_info_wrap i[class*="fa-star"] {
	color: #c96a4b !important;
}


/* =====================================================
   TÍTULO DEL TESTIMONIO
   ===================================================== */

.tr_testimonials_page .tt_review_title {
	margin-bottom: 9px !important;

	font-style: normal !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;

	color: #3b4649 !important;
}


/* =====================================================
   TEXTO DEL TESTIMONIO
   ===================================================== */

.tr_testimonials_page .ttshowcase_rl_quote,
.tr_testimonials_page .ttshowcase_rl_quote p {
	font-style: normal !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 1.65 !important;

	color: #5b6264 !important;
}


/* =====================================================
   COMILLAS
   ===================================================== */

.tr_testimonials_page .ttshowcase_rl_quote > i.fa-quote-left {
	color: #c96a4b !important;
	opacity: .32 !important;
}


/* =====================================================
   LEER MÁS
   ===================================================== */

.tr_testimonials_page .ttshowcase_rl_readmore {
	margin-top: 13px !important;
}

.tr_testimonials_page .ttshowcase_rl_readmore a {
	display: inline-flex;
	align-items: center;
	gap: 6px;

	font-size: 14px !important;
	font-style: normal !important;
	font-weight: 700 !important;
	line-height: 1.2;

	color: #c96a4b !important;

	text-decoration: none !important;

	transition:
		color .2s ease,
		gap .2s ease;
}

.tr_testimonials_page .ttshowcase_rl_readmore a::after {
	content: "\2192";
	font-family: Arial, Helvetica, sans-serif;
	font-weight: 400;
}

.tr_testimonials_page .ttshowcase_rl_readmore a:hover {
	color: #243438 !important;
	gap: 9px;
}


/* =====================================================
   TABLET / MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	.tr_testimonials_page .ttshowcase_rl_box.tt_2cl {
		width: 100% !important;

		margin: 0 !important;

		padding-left: 0 !important;
		padding-right: 0 !important;
		padding-bottom: 38px !important;
	}

	.tr_testimonials_page .ttshowcase_rl_quote,
	.tr_testimonials_page .ttshowcase_rl_quote p {
		font-size: 15px !important;
		line-height: 1.65 !important;
	}

}
/* =====================================================
   TESTIMONIOS – GRILLA REAL, SIN MASONRY
   ===================================================== */

.tr_testimonials_page .ttshowcase_masonry {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 64px;
	row-gap: 54px;

	height: auto !important;
}

/* Neutralizar posicionamiento Masonry del plugin */
.tr_testimonials_page .ttshowcase_masonry .ttshowcase_rl_box {
	position: static !important;

	top: auto !important;
	left: auto !important;

	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;

	transform: none !important;
}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	.tr_testimonials_page .ttshowcase_masonry {
		grid-template-columns: 1fr;
		column-gap: 0;
		row-gap: 38px;
	}

}

/* =====================================================
   HEADER – BREAKPOINT DESKTOP / MÓVIL
   ===================================================== */

/*
 * Header desktop: 1101px en adelante
 * Header móvil:   1100px hacia abajo
 *
 * IMPORTANTE:
 * Este breakpoint aplica SOLO al header.
 * Los breakpoints generales de Divi siguen en 980 / 767.
 */

@media (min-width: 1101px) {

	.tr_header_desktop {
		display: block !important;
	}

	.tr_header_mobile {
		display: none !important;
	}

}

@media (max-width: 1100px) {

	.tr_header_desktop {
		display: none !important;
	}

	.tr_header_mobile {
		display: block !important;
	}

}


/* =====================================================
   HEADER DESKTOP – BASE
   ===================================================== */

@media (min-width: 1101px) {

	/* Sección */
	.tr_header_desktop {
		padding: 0 !important;
		background: #ffffff !important;
		border-bottom: 1px solid rgba(36, 52, 56, .10);
	}


	/* Fila */
	.tr_header_desktop_row {
		display: flex !important;
		align-items: center !important;

		width: 100% !important;
		max-width: none !important;

		min-height: 78px;

		margin: 0 !important;

		padding-top: 0 !important;
		padding-bottom: 0 !important;
		padding-left: clamp(55px, 5vw, 110px) !important;
		padding-right: clamp(55px, 5vw, 110px) !important;
	}


	/* Columnas */
	.tr_header_desktop_row > .et_pb_column {
		display: flex !important;
		align-items: center !important;

		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}


	/* Columna logo */
	.tr_header_desktop_row > .et_pb_column:first-child {
		flex: 0 0 250px !important;

		width: 250px !important;
		max-width: 250px !important;

		margin-right: 0 !important;
	}


	/* Logo */
	.tr_header_desktop_row .et_pb_image {
		display: block !important;

		width: 250px !important;
		max-width: 250px !important;

		margin: 0 !important;
		padding: 0 !important;
	}

	.tr_header_desktop_row .et_pb_image .et_pb_image_wrap {
		display: block !important;

		width: 100% !important;
		max-width: 100% !important;
	}

	.tr_header_desktop_row .et_pb_image img {
		display: block !important;

		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;

		margin: 0 !important;
	}


	/* Columna menú */
	.tr_header_desktop_row > .et_pb_column:last-child {
		flex: 1 1 auto !important;

		width: auto !important;
		max-width: none !important;

		margin-left: 0 !important;
		margin-right: 0 !important;
	}


	/* Módulo menú */
	.tr_header_desktop_row .et_pb_menu {
		width: 100% !important;

		margin: 0 !important;
		padding: 0 !important;

		background: transparent !important;
	}

	.tr_header_desktop_row .et_pb_menu_inner_container {
		width: 100% !important;
	}

	.tr_header_desktop_row .et_pb_menu__wrap {
		width: 100% !important;

		justify-content: flex-end !important;
		align-items: center !important;
	}


	/* Lista principal */
	.tr_header_desktop_row .et-menu {
		display: flex !important;
		align-items: center !important;

		margin: 0 !important;
		padding: 0 !important;
	}

	.tr_header_desktop_row .et-menu > li {
		display: flex !important;
		align-items: center !important;

		padding-left: 13px !important;
		padding-right: 13px !important;

		margin: 0 !important;
	}


	/* Enlaces */
	.tr_header_desktop_row .et-menu > li > a {
		display: flex !important;
		align-items: center !important;

		padding: 29px 0 !important;

		font-size: 15px !important;
		font-weight: 400 !important;
		line-height: 1.2 !important;

		color: #5b6264 !important;

		transition:
			padding .25s ease,
			color .18s ease;
	}

	.tr_header_desktop_row .et-menu > li > a:hover {
		color: #c96a4b !important;
		opacity: 1 !important;
	}

	.tr_header_desktop_row .et-menu > li.current-menu-item > a,
	.tr_header_desktop_row .et-menu > li.current-menu-ancestor > a {
		color: #243438 !important;
	}


	/* Flecha submenú */
	.tr_header_desktop_row .menu-item-has-children > a:first-child::after {
		position: relative !important;

		top: auto !important;
		right: auto !important;

		margin-left: 6px;

		color: #c96a4b;
	}


	/* Sin logo nativo del módulo Menú */
	.tr_header_desktop_row .et_pb_menu__logo-wrap,
	.tr_header_desktop_row .et_pb_menu__logo-slot {
		display: none !important;
	}

}


/* =====================================================
   HEADER DESKTOP – MEGA MENÚ ÁREAS DE PRÁCTICA
   ===================================================== */

@media (min-width: 1101px) {

	/* Permitir que el mega menú use el ancho del header */
	.tr_header_desktop,
	.tr_header_desktop_row,
	.tr_header_desktop_row > .et_pb_column,
	.tr_header_desktop_row .et_pb_menu,
	.tr_header_desktop_row .et_pb_menu_inner_container,
	.tr_header_desktop_row .et_pb_menu__wrap,
	.tr_header_desktop_row .et_pb_menu__menu,
	.tr_header_desktop_row .et-menu-nav,
	.tr_header_desktop_row .et-menu {
		position: static !important;
	}

	.tr_header_desktop_row {
		position: relative !important;
	}


	/* Contenedor mega menú */
	.tr_header_desktop_row
	.et-menu
	> li.tr_areas_mega
	> ul.sub-menu {

		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr));

		column-gap: 38px;
		row-gap: 0;

		position: absolute !important;

		top: 100% !important;
		left: clamp(55px, 5vw, 110px) !important;
		right: clamp(55px, 5vw, 110px) !important;

		width: auto !important;
		max-width: none !important;

		margin: 0 !important;
		padding: 30px 36px 0 !important;

		background: #ffffff !important;

		border: 0 !important;
		border-top: 3px solid #c96a4b !important;

		box-shadow: 0 18px 40px rgba(36, 52, 56, .12) !important;
	}


	/* Columnas principales */
	.tr_header_desktop_row
	.et-menu
	> li.tr_areas_mega
	> ul.sub-menu
	> li {

		float: none !important;

		width: auto !important;
		max-width: none !important;

		margin: 0 !important;
		padding: 0 !important;
	}


	/* Encabezados de grupo */
	.tr_header_desktop_row
	.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_group
	> a {

		display: block !important;

		margin: 0 0 16px !important;
		padding: 0 0 12px !important;

		border-bottom: 1px solid rgba(36, 52, 56, .10);

		font-size: 12px !important;
		font-weight: 700 !important;
		line-height: 1.35 !important;

		letter-spacing: .055em;
		text-transform: uppercase;

		color: #c96a4b !important;

		cursor: default;
	}

	.tr_header_desktop_row
	.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_group
	> a:hover {
		color: #c96a4b !important;
		background: transparent !important;
	}


	/* Submenús internos */
	.tr_header_desktop_row
	.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_group
	> ul.sub-menu {

		display: block !important;

		position: static !important;

		width: 100% !important;

		margin: 0 !important;
		padding: 0 !important;

		border: 0 !important;
		box-shadow: none !important;

		background: transparent !important;
	}

	.tr_header_desktop_row
	.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_group
	> ul.sub-menu
	> li {

		display: block !important;

		width: 100% !important;

		margin: 0 !important;
		padding: 0 !important;
	}


	/* Enlaces de áreas */
	.tr_header_desktop_row
	.tr_areas_mega
	.tr_mega_group
	ul.sub-menu
	li
	a {

		display: block !important;

		position: relative;

		padding: 6px 0 !important;

		font-size: 15px !important;
		font-weight: 400 !important;
		line-height: 1.4 !important;

		color: #5b6264 !important;

		background: transparent !important;

		transition:
			color .18s ease,
			transform .18s ease;
	}

	.tr_header_desktop_row
	.tr_areas_mega
	.tr_mega_group
	ul.sub-menu
	li
	a:hover {
		color: #c96a4b !important;
		transform: translateX(3px);
	}


	/* Trigger Áreas de práctica */
	.tr_header_desktop_row
	.tr_areas_mega:hover
	> a,

	.tr_header_desktop_row
	.tr_areas_mega.current-menu-ancestor
	> a {
		color: #c96a4b !important;
	}


	/* Ver todas las áreas */
	.tr_header_desktop_row
	.et-menu
	> li.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_all {

		grid-column: 1 / -1 !important;

		margin: 0 -36px !important;
		padding: 28px 0 0 !important;

		background: #ffffff !important;
		border: 0 !important;
	}

	.tr_header_desktop_row
	.et-menu
	> li.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_all
	> a {

		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;

		width: 100% !important;

		padding: 15px 36px !important;

		border-top: 1px solid rgba(36, 52, 56, .09) !important;

		background: #f7f4ef !important;

		color: #c96a4b !important;

		font-size: 14px !important;
		font-weight: 700 !important;
		line-height: 1.2 !important;

		transition: color .18s ease;
	}

	.tr_header_desktop_row
	.et-menu
	> li.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_all
	> a:hover {
		color: #243438 !important;
	}


	/* Limpieza nativa Divi */
	.tr_header_desktop_row
	.tr_areas_mega
	ul.sub-menu {
		border-radius: 0 !important;
	}

	.tr_header_desktop_row
	.tr_areas_mega
	ul.sub-menu
	a {
		width: auto !important;
	}

	.tr_header_desktop_row
	.tr_areas_mega
	.tr_mega_group
	> a::after {
		display: none !important;
	}

}


/* =====================================================
   HEADER DESKTOP – STICKY
   ===================================================== */

@media (min-width: 1101px) {

	.tr_header_desktop {
		z-index: 9999 !important;

		transition:
			box-shadow .25s ease,
			background-color .25s ease;
	}

	.tr_header_desktop_row {
		transition: min-height .25s ease;
	}

	.tr_header_desktop_row .et_pb_image {
		transition:
			width .25s ease,
			max-width .25s ease;
	}


	/* Estado sticky */
	.tr_header_desktop.et_pb_sticky {
		background: rgba(255, 255, 255, .98) !important;

		box-shadow:
			0 8px 24px rgba(36, 52, 56, .08) !important;
	}

	.tr_header_desktop.et_pb_sticky
	.tr_header_desktop_row {
		min-height: 70px;
	}

	.tr_header_desktop.et_pb_sticky
	.tr_header_desktop_row
	.et_pb_image {

		width: 225px !important;
		max-width: 225px !important;
	}

	.tr_header_desktop.et_pb_sticky
	.tr_header_desktop_row
	> .et_pb_column:first-child {

		flex-basis: 235px !important;

		width: 235px !important;
		max-width: 235px !important;
	}

	.tr_header_desktop.et_pb_sticky
	.tr_header_desktop_row
	.et-menu
	> li
	> a {

		padding-top: 25px !important;
		padding-bottom: 25px !important;
	}

}


/* =====================================================
   CAROLINA ALLIENDE – HEADER / MENÚ MÓVIL
   ===================================================== */

@media (max-width: 1100px) {

	/* -------------------------------------------------
	   FORZAR MODO MÓVIL DEL MÓDULO DIVI HASTA 1100PX
	   ------------------------------------------------- */

	.tr_mobile_menu .et_pb_menu__menu {
		display: none !important;
	}

	.tr_mobile_menu .et_mobile_nav_menu {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;

		margin: 0 !important;
	}


	/* -------------------------------------------------
	   HEADER
	   ------------------------------------------------- */

	.tr_header_mobile {
		display: block !important;

		position: relative;
		z-index: 99999;

		padding: 0 !important;

		background: #ffffff !important;

		border-bottom: 1px solid rgba(36, 52, 56, .10);

		transition:
			background-color .22s ease,
			box-shadow .22s ease;
	}


	/* -------------------------------------------------
	   FILA
	   ------------------------------------------------- */

	.tr_header_mobile_row {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 46px !important;
		align-items: center !important;
		column-gap: 16px !important;

		width: 100% !important;
		max-width: none !important;

		min-height: 76px !important;

		margin: 0 !important;
		padding: 10px 24px !important;
	}


	/* -------------------------------------------------
	   COLUMNAS
	   ------------------------------------------------- */

	.tr_header_mobile_row > .et_pb_column {
		float: none !important;
		clear: none !important;

		width: auto !important;
		max-width: none !important;

		margin: 0 !important;
		padding: 0 !important;
	}

	.tr_header_mobile_row > .et_pb_column:first-child {
		grid-column: 1 !important;

		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
	}

	.tr_header_mobile_row > .et_pb_column:last-child {
		grid-column: 2 !important;

		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;

		width: 46px !important;
		max-width: 46px !important;
	}


	/* -------------------------------------------------
	   LOGO
	   ------------------------------------------------- */

	.tr_header_mobile_row .et_pb_image {
		display: block !important;

		width: min(56vw, 220px) !important;
		max-width: 220px !important;

		margin: 0 !important;
		padding: 0 !important;

		text-align: left !important;
	}

	.tr_header_mobile_row .et_pb_image_wrap {
		display: block !important;

		width: 100% !important;
		max-width: 100% !important;
	}

	.tr_header_mobile_row .et_pb_image img {
		display: block !important;

		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;

		margin: 0 !important;
	}


	/* -------------------------------------------------
	   MÓDULO MENÚ
	   ------------------------------------------------- */

	.tr_mobile_menu {
		display: block !important;

		width: 46px !important;
		min-width: 46px !important;
		max-width: 46px !important;

		margin: 0 !important;
		padding: 0 !important;

		background: transparent !important;
	}

	.tr_mobile_menu .et_pb_menu_inner_container,
	.tr_mobile_menu .et_pb_menu__wrap,
	.tr_mobile_menu .mobile_nav {

		display: flex !important;
		align-items: center !important;
		justify-content: center !important;

		width: 46px !important;
		height: 46px !important;

		margin: 0 !important;
		padding: 0 !important;

		background: transparent !important;
	}


	/* Sin logo interno del módulo Menú */
	.tr_mobile_menu .et_pb_menu__logo-wrap,
	.tr_mobile_menu .et_pb_menu__logo-slot {
		display: none !important;
	}


	/* -------------------------------------------------
	   HAMBURGUESA
	   ------------------------------------------------- */

	.tr_mobile_menu .mobile_menu_bar {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;

		width: 46px !important;
		height: 46px !important;

		margin: 0 !important;
		padding: 0 !important;

		border-radius: 50% !important;

		background: #f7f4ef !important;

		cursor: pointer;
	}

	.tr_mobile_menu .mobile_menu_bar::before {
		color: #c96a4b !important;
		font-size: 32px !important;
	}


	/* Estado abierto / X */
	.tr_mobile_menu .mobile_nav.opened .mobile_menu_bar {
		position: fixed !important;

		top: 22px !important;
		right: 24px !important;

		z-index: 1000001 !important;

		background: #f7f4ef !important;

		box-shadow: 0 8px 24px rgba(36, 52, 56, .10);
	}

	.tr_mobile_menu .mobile_nav.opened .mobile_menu_bar::before {
		content: "\4d" !important;

		color: #c96a4b !important;

		font-size: 30px !important;
	}


	/* -------------------------------------------------
	   PANEL FULLSCREEN
	   ------------------------------------------------- */

	.tr_mobile_menu .mobile_nav .et_mobile_menu {
		display: block !important;

		position: fixed !important;

		top: 0 !important;
		right: 0 !important;
		left: auto !important;

		width: 100vw !important;
		height: 100vh !important;
		height: 100dvh !important;

		margin: 0 !important;
		padding: 94px 24px 38px !important;

		border: 0 !important;

		background: #ffffff !important;

		box-shadow: -20px 0 60px rgba(36, 52, 56, .16);

		overflow-y: auto !important;
		-webkit-overflow-scrolling: touch;

		z-index: 999999;

		transform: translateX(104%);
		opacity: 0;

		visibility: hidden;
		pointer-events: none;

		transition:
			transform .36s cubic-bezier(.22, .61, .36, 1),
			opacity .22s ease,
			visibility 0s linear .36s;

		will-change: transform, opacity;
	}

	.tr_mobile_menu .mobile_nav.opened .et_mobile_menu {
		transform: translateX(0);

		opacity: 1;

		visibility: visible;
		pointer-events: auto;

		transition:
			transform .36s cubic-bezier(.22, .61, .36, 1),
			opacity .22s ease,
			visibility 0s linear 0s;
	}


	/* -------------------------------------------------
	   RESET GENERAL LISTA
	   ------------------------------------------------- */

	.tr_mobile_menu .et_mobile_menu li {
		position: relative;

		margin: 0 !important;
		padding: 0 !important;
	}

	.tr_mobile_menu .et_mobile_menu ul {
		margin: 0 !important;
	}


	/* -------------------------------------------------
	   NIVEL 1
	   ------------------------------------------------- */

	.tr_mobile_menu
	.et_mobile_menu
	> li
	> a {

		display: flex !important;
		align-items: center !important;

		min-height: 58px;

		padding: 15px 4px !important;

		border-bottom: 1px solid rgba(36, 52, 56, .10) !important;

		background: transparent !important;

		color: #243438 !important;

		font-size: 19px !important;
		font-weight: 600 !important;
		line-height: 1.25 !important;

		letter-spacing: -.01em;
	}

	.tr_mobile_menu
	.et_mobile_menu
	> li
	> a:hover {
		color: #c96a4b !important;
		opacity: 1 !important;
	}


	/* -------------------------------------------------
	   NIVEL 1 CON SUBMENÚ – ÁREAS DE PRÁCTICA
	   ------------------------------------------------- */

	.tr_mobile_menu
	.et_mobile_menu
	> li.menu-item-has-children
	> a {

		position: relative !important;

		padding-right: 52px !important;

		background: #f7f4ef !important;

		color: #243438 !important;
	}

	.tr_mobile_menu
	.et_mobile_menu
	> li.menu-item-has-children
	> a::after {

		content: "+";

		position: absolute;

		right: 8px !important;
		top: 50% !important;

		transform: translateY(-50%) !important;

		display: flex;
		align-items: center;
		justify-content: center;

		width: 32px;
		height: 32px;

		border-radius: 50%;

		background: #ffffff;

		color: #c96a4b;

		font-family: Arial, Helvetica, sans-serif;
		font-size: 22px;
		font-weight: 400;
		line-height: 1;
	}

	.tr_mobile_menu
	.et_mobile_menu
	> li.tr-submenu-open
	> a::after {
		content: "–";
	}


	/* -------------------------------------------------
	   SUBMENÚS
	   ------------------------------------------------- */

	.tr_mobile_menu
	.et_mobile_menu
	.menu-item-has-children
	> ul.sub-menu {

		display: none !important;

		position: static !important;

		width: 100% !important;

		margin: 0 !important;
		padding: 8px 0 12px !important;

		border: 0 !important;

		background: transparent !important;

		box-shadow: none !important;
	}

	.tr_mobile_menu
	.et_mobile_menu
	.menu-item-has-children.tr-submenu-open
	> ul.sub-menu {
		display: block !important;
	}


	/* -------------------------------------------------
	   GRUPOS DE ÁREAS
	   ------------------------------------------------- */

	.tr_mobile_menu
	.et_mobile_menu
	.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_group {

		margin: 6px 0 !important;
	}

	.tr_mobile_menu
	.et_mobile_menu
	.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_group
	> a {

		position: relative !important;

		display: flex !important;
		align-items: center !important;

		min-height: 52px;

		padding: 13px 52px 13px 14px !important;

		border: 0 !important;
		border-bottom: 1px solid rgba(36, 52, 56, .08) !important;

		background: transparent !important;

		color: #c96a4b !important;

		font-size: 12px !important;
		font-weight: 700 !important;
		line-height: 1.35 !important;

		letter-spacing: .055em;
		text-transform: uppercase;

		cursor: pointer;
	}

	.tr_mobile_menu
	.et_mobile_menu
	.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_group
	> a::after {

		content: "+" !important;

		display: flex !important;
		align-items: center !important;
		justify-content: center !important;

		position: absolute !important;

		top: 50% !important;
		right: 8px !important;

		width: 30px !important;
		height: 30px !important;

		transform: translateY(-50%) !important;

		border-radius: 50%;

		background: #f7f4ef !important;
		color: #c96a4b !important;

		font-family: Arial, Helvetica, sans-serif !important;
		font-size: 20px !important;
		font-weight: 400 !important;
		line-height: 1 !important;
	}

	.tr_mobile_menu
	.et_mobile_menu
	.tr_areas_mega
	> ul.sub-menu
	> li.tr_mega_group.tr-submenu-open
	> a::after {

		content: "–" !important;
	}


	/* -------------------------------------------------
	   NIVEL 3 – ÁREAS INDIVIDUALES
	   ------------------------------------------------- */

	.tr_mobile_menu
	.et_mobile_menu
	.tr_mega_group
	> ul.sub-menu {

		padding: 3px 0 10px 16px !important;
	}

	.tr_mobile_menu
	.et_mobile_menu
	.tr_mega_group
	> ul.sub-menu
	> li
	> a {

		display: block !important;

		padding: 11px 4px !important;

		border-bottom: 1px solid rgba(36, 52, 56, .07) !important;

		background: transparent !important;

		color: #5b6264 !important;

		font-size: 16px !important;
		font-weight: 400 !important;
		line-height: 1.35 !important;
	}

	.tr_mobile_menu
	.et_mobile_menu
	.tr_mega_group
	> ul.sub-menu
	> li
	> a:hover {
		color: #c96a4b !important;
		opacity: 1 !important;
	}


	/* -------------------------------------------------
	   VER TODAS LAS ÁREAS
	   ------------------------------------------------- */

	.tr_mobile_menu
	.et_mobile_menu
	.tr_areas_mega
	.tr_mega_all {

		margin: 10px 0 4px !important;
	}

	.tr_mobile_menu
	.et_mobile_menu
	.tr_areas_mega
	.tr_mega_all
	> a {

		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;

		padding: 14px 16px !important;

		border: 0 !important;

		background: #f7f4ef !important;

		color: #c96a4b !important;

		font-size: 15px !important;
		font-weight: 700 !important;
		line-height: 1.25 !important;
	}


	/* -------------------------------------------------
	   ESTADOS ACTIVOS
	   ------------------------------------------------- */

	.tr_mobile_menu
	.et_mobile_menu
	li.current-menu-item
	> a {

		color: #c96a4b !important;
	}

	.tr_mobile_menu
	.et_mobile_menu
	li.current-menu-ancestor
	> a,

	.tr_mobile_menu
	.et_mobile_menu
	li.current-menu-parent
	> a {

		color: #c96a4b !important;
	}


	/* -------------------------------------------------
	   STICKY
	   ------------------------------------------------- */

	.tr_header_mobile.et_pb_sticky {
		background: rgba(255, 255, 255, .98) !important;

		box-shadow:
			0 8px 24px rgba(36, 52, 56, .08) !important;
	}

	.tr_header_mobile.et_pb_sticky
	.tr_header_mobile_row {
		min-height: 76px !important;
	}


	/* Panel y X siempre por encima */
	.tr_header_mobile .tr_mobile_menu
	.mobile_nav.opened
	.et_mobile_menu {
		z-index: 999999 !important;
	}

	.tr_header_mobile .tr_mobile_menu
	.mobile_nav.opened
	.mobile_menu_bar {
		z-index: 1000001 !important;
	}


	/* Bloquear fondo con menú abierto */
	body.tr-mobile-menu-open {
		overflow: hidden !important;
	}

}


/* =====================================================
   HEADER MÓVIL – PANTALLAS PEQUEÑAS
   ===================================================== */

@media (max-width: 420px) {

	.tr_header_mobile_row {
		padding-left: 18px !important;
		padding-right: 18px !important;
	}

	.tr_header_mobile_row .et_pb_image {
		width: min(58vw, 205px) !important;
		max-width: 205px !important;
	}

	.tr_mobile_menu .mobile_nav.opened .mobile_menu_bar {
		right: 18px !important;
	}

	.tr_mobile_menu .mobile_nav .et_mobile_menu {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

}
/* =====================================================
   HEADER MÓVIL – RESET LISTAS HASTA 1100PX
   Divi solo lo hace nativamente hasta 980px
   ===================================================== */

@media (max-width: 1100px) {

	.tr_mobile_menu .et_mobile_menu,
	.tr_mobile_menu .et_mobile_menu ul {
		list-style: none !important;
	}

	.tr_mobile_menu .et_mobile_menu li {
		list-style: none !important;
	}

	.tr_mobile_menu .et_mobile_menu li::marker {
		content: "" !important;
		display: none !important;
	}

}
/* =====================================================
   CAROLINA ALLIENDE – FOOTER
   ===================================================== */

.tr_footer {
	padding: 0 !important;

	background: #243438 !important;

	color: rgba(255, 255, 255, .72);
}


/* =====================================================
   FILA PRINCIPAL
   ===================================================== */

.tr_footer_main {
	display: flex !important;
	align-items: stretch !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;

	padding:
		68px
		clamp(55px, 5vw, 110px)
		58px !important;
}


/* Columnas */
.tr_footer_main > .et_pb_column {
	margin-bottom: 0 !important;
}


/* =====================================================
   TIPOGRAFÍA
   ===================================================== */

.tr_footer h3 {
	margin: 0 0 18px !important;
	padding: 0 !important;

	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;

	color: #ffffff !important;
}


.tr_footer p {
	margin: 0 0 15px !important;
	padding: 0 !important;

	font-size: 14px !important;
	line-height: 1.65 !important;

	color: rgba(255, 255, 255, .68) !important;
}


.tr_footer p:last-child {
	margin-bottom: 0 !important;
}


/* Rol profesional */
.tr_footer_role {
	margin-top: -11px !important;
	margin-bottom: 22px !important;

	font-size: 13px !important;
	font-weight: 700 !important;

	letter-spacing: .055em;
	text-transform: uppercase;

	color: #c96a4b !important;
}


/* Atención nacional */
.tr_footer_meta {
	margin-top: 22px !important;

	font-size: 13px !important;
	font-weight: 600 !important;

	color: rgba(255, 255, 255, .82) !important;
}


/* =====================================================
   LINKS
   ===================================================== */

.tr_footer a {
	color: rgba(255, 255, 255, .82) !important;

	text-decoration: none !important;

	transition: color .18s ease;
}


.tr_footer a:hover {
	color: #c96a4b !important;
}


/* =====================================================
   NAVEGACIÓN
   ===================================================== */

.tr_footer_nav {
	margin: 0 !important;
	padding: 0 !important;

	list-style: none !important;
}


.tr_footer_nav li {
	margin: 0 0 9px !important;
	padding: 0 !important;

	list-style: none !important;
}


.tr_footer_nav li:last-child {
	margin-bottom: 0 !important;
}


.tr_footer_nav a {
	font-size: 14px !important;
	line-height: 1.45 !important;
}


/* Ver todas las áreas */
.tr_footer p.tr_footer_more {
	margin: 25px 0 0 !important;
}

.tr_footer p.tr_footer_more a {
	font-weight: 700 !important;
	color: #c96a4b !important;
}

.tr_footer p.tr_footer_more a:hover {
	color: #ffffff !important;
}


.tr_footer_more a {
	font-weight: 700 !important;

	color: #c96a4b !important;
}


.tr_footer_more a:hover {
	color: #ffffff !important;
}


/* =====================================================
   COLUMNA CONVERSIÓN
   ===================================================== */

.tr_footer_action {
	position: relative;

	padding-left: 42px !important;

	border-left: 1px solid rgba(255, 255, 255, .10);
}


.tr_footer_action h3 {
	max-width: 330px;

	font-size: 20px !important;
	line-height: 1.35 !important;
}


.tr_footer_action p {
	max-width: 390px;
}


/* CTA */
.tr_footer_cta {
	margin-top: 24px !important;
}


.tr_footer_cta a {
	display: inline-flex;
	align-items: center;

	font-weight: 700 !important;

	color: #c96a4b !important;
}


.tr_footer_cta a:hover {
	color: #ffffff !important;
}


/* =====================================================
   REDES SOCIALES
   ===================================================== */

.tr_footer_social {
	margin-top: 28px !important;
}


.tr_footer_social .et_pb_social_media_follow {
	margin: 0 !important;
}


.tr_footer_social li {
	margin-right: 10px !important;
}


.tr_footer_social li:last-child {
	margin-right: 0 !important;
}


.tr_footer_social li a.icon {
	background: transparent !important;
}


.tr_footer_social li a.icon::before {
	font-size: 18px !important;

	color: rgba(255, 255, 255, .72) !important;

	transition: color .18s ease;
}


.tr_footer_social li a.icon:hover::before {
	color: #c96a4b !important;
}


/* =====================================================
   FRANJA INFERIOR
   ===================================================== */

.tr_footer_bottom {
	display: flex !important;
	align-items: center !important;

	width: 100% !important;
	max-width: none !important;

	margin: 0 !important;

	padding:
		22px
		clamp(55px, 5vw, 110px)
		24px !important;

	border-top: 1px solid rgba(255, 255, 255, .10);
}


.tr_footer_bottom p {
	margin: 0 !important;

	font-size: 12px !important;
	line-height: 1.5 !important;

	color: rgba(255, 255, 255, .48) !important;
}


.tr_footer_bottom a {
	color: rgba(255, 255, 255, .60) !important;
}


.tr_footer_bottom a:hover {
	color: #c96a4b !important;
}


/* Segunda columna */
.tr_footer_bottom > .et_pb_column:last-child {
	text-align: right;
}


/* =====================================================
   TABLET
   ===================================================== */

@media (max-width: 980px) {

	.tr_footer_main {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;

		column-gap: 50px;
		row-gap: 45px;

		padding:
			55px
			6%
			48px !important;
	}


	.tr_footer_main > .et_pb_column {
		width: auto !important;
		max-width: none !important;

		margin: 0 !important;
	}


	.tr_footer_action {
		grid-column: 1 / -1;

		padding:
			35px
			0
			0 !important;

		border-left: 0;

		border-top: 1px solid rgba(255, 255, 255, .10);
	}


	.tr_footer_bottom {
		padding:
			20px
			6%
			22px !important;
	}

}


/* =====================================================
   MÓVIL
   ===================================================== */

@media (max-width: 767px) {

	.tr_footer_main {
		display: block !important;

		padding:
			46px
			35px
			38px !important;
	}


	.tr_footer_main > .et_pb_column {
		width: 100% !important;

		margin:
			0
			0
			38px !important;
	}


	.tr_footer_main > .et_pb_column:last-child {
		margin-bottom: 0 !important;
	}


	.tr_footer h3 {
		font-size: 17px !important;
	}


	.tr_footer_action {
		padding:
			34px
			0
			0 !important;

		border-top: 1px solid rgba(255, 255, 255, .10);
	}


	.tr_footer_action h3 {
		font-size: 19px !important;
	}


	.tr_footer_social {
		margin-top: 25px !important;
	}


	/* Bottom */
	.tr_footer_bottom {
		display: block !important;

		padding:
			20px
			35px
			24px !important;
	}


	.tr_footer_bottom > .et_pb_column {
		width: 100% !important;

		margin: 0 !important;

		text-align: left !important;
	}


	.tr_footer_bottom > .et_pb_column:last-child {
		margin-top: 8px !important;
	}


	.tr_footer_bottom p {
		font-size: 11px !important;
	}

}
/* =====================================================
   FOOTER – LÍNEA TERRACOTA EN TÍTULOS
   ===================================================== */

.tr_footer h3::after {
	content: "";
	display: block;

	width: 32px;
	height: 2px;

	margin-top: 10px;

	background: #c96a4b;
}
/* =====================================================
   MEGA MENÚ – ACTIVAR HOVER SOLO DESDE EL TRIGGER
   ===================================================== */

@media (min-width: 1101px) {

	/* Estado cerrado */
	.tr_header_desktop_row
	.et-menu
	> li.tr_areas_mega
	> ul.sub-menu {

		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none !important;

		transform: translateY(6px);

		transition:
			opacity .18s ease,
			transform .18s ease,
			visibility 0s linear .18s;
	}


	/* Se abre SOLO al entrar por Áreas de práctica */
	.tr_header_desktop_row
	.et-menu
	> li.tr_areas_mega:hover
	> ul.sub-menu,

	.tr_header_desktop_row
	.et-menu
	> li.tr_areas_mega:focus-within
	> ul.sub-menu {

		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;

		transform: translateY(0);

		transition:
			opacity .18s ease,
			transform .18s ease,
			visibility 0s linear 0s;
	}

}