/*
 * JP Financial — javier-rumbo-base.css
 * Base layer extracted from Additional CSS in Phase 5.
 */

/* 143: Javier Rumbo / jra-hero */
/* JP_PAGE_CSS_MIGRATION_START: assets/css/author-page.css */
.jp-author-profile-page {
	background: #f5f4f0;
}

.jp-author-profile-page .site-main {
	background: #f5f4f0;
	overflow: hidden;
}

.jp-author-page {
	background: #f5f4f0;
	color: #001c10;
	overflow-x: clip;
}

.jp-author-page a {
	transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, transform 180ms ease;
}

body.jp-author-profile-page .jp-author-hero {
	align-items: center !important;
	display: flex !important;
	flex-direction: row !important;
	gap: 88px !important;
	justify-content: center !important;
	position: relative;
	overflow: hidden;
}

/* The author hero follows the 1440px Figma frame exactly. Elementor's
 * containers have a 10px default inner padding on this installation, so it
 * must be neutralised for this composition. */
body.jp-author-profile-page .jp-author-hero > .e-con-inner,
body.jp-author-profile-page .jp-author-hero-copy,
body.jp-author-profile-page .jp-author-hero-copy > .e-con-inner,
body.jp-author-profile-page .jp-author-hero-media,
body.jp-author-profile-page .jp-author-hero-media > .e-con-inner,
body.jp-author-profile-page .jp-author-actions {
	padding: 0 !important;
}

body.jp-author-profile-page .jp-author-hero > .e-con-inner {
	max-width: 1280px !important;
	min-height: 650px;
}

body.jp-author-profile-page .jp-author-hero-copy {
	flex: 0 0 560px !important;
	max-width: 560px !important;
	width: 560px !important;
}

body.jp-author-profile-page .jp-author-hero-media {
	flex: 0 0 632px !important;
	max-width: 632px !important;
	width: 632px !important;
}

body.jp-author-profile-page .jp-author-hero-media .jp-author-main-image,
body.jp-author-profile-page .jp-author-hero-media .jp-author-main-image img {
	display: block !important;
	height: 650px !important;
	width: 632px !important;
}

body.jp-author-profile-page .jp-author-hero-media .jp-author-main-image img {
	object-position: center center !important;
}

body.jp-author-profile-page .jp-author-specialty {
	bottom: -22px !important;
	left: -67px !important;
}

body.jp-author-profile-page .jp-author-actions {
	margin-top: 20px !important;
}

body.jp-author-profile-page .jp-author-hero > .e-con-inner {
	align-items: center;
	display: flex !important;
	flex-direction: row !important;
	gap: 88px;
	justify-content: space-between !important;
	max-width: 1280px;
	width: 100%;
}

body.jp-author-profile-page .jp-author-hero-copy {
	flex: 0 0 min(46%, 570px) !important;
	width: min(46%, 570px);
	z-index: 2;
}

body.jp-author-profile-page .jp-author-back a {
	color: inherit !important;
	text-decoration: none;
}

body.jp-author-profile-page .jp-author-back a:hover,
body.jp-author-profile-page .jp-author-back a:focus-visible {
	color: #ffffff !important;
}

body.jp-author-profile-page .jp-author-title .elementor-heading-title {
	margin: 0;
}

body.jp-author-profile-page .jp-author-title .elementor-heading-title span {
	color: #dafba2 !important;
	font-style: italic !important;
}

body.jp-author-profile-page .jp-author-intro .elementor-widget-container {
	max-width: 575px;
}

body.jp-author-profile-page .jp-author-actions {
	align-items: center;
	display: flex;
	flex-direction: row;
	gap: 12px;
	margin-top: 20px;
}

body.jp-author-profile-page .jp-author-actions .elementor-button {
	align-items: center;
	display: inline-flex;
	gap: 10px;
	justify-content: center;
	min-height: 51px;
	min-width: 151px;
	text-decoration: none;
}

body.jp-author-profile-page .jp-author-hero-media {
	flex: 0 1 632px !important;
	max-width: 632px;
	position: relative;
	width: 49%;
	z-index: 1;
}

body.jp-author-profile-page .jp-author-hero-media .elementor-widget-image img {
	aspect-ratio: 632 / 650;
	border-radius: 12px;
	box-shadow: 0 28px 52px rgba(0, 0, 0, 0.32);
	filter: grayscale(100%);
	height: auto;
	object-fit: cover;
	object-position: center top;
	width: 100%;
}

body.jp-author-profile-page .jp-author-specialty {
	bottom: 78px;
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.22);
	left: -67px;
	position: absolute;
	width: 249px;
	z-index: 3;
}

body.jp-author-profile-page .jp-author-specialty span {
	color: rgba(0, 28, 16, 0.58);
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 1.68px;
	line-height: 16px;
	margin-bottom: 5px;
	text-transform: uppercase;
}

body.jp-author-profile-page .jp-author-bio-card {
	position: relative;
	z-index: 2;
}

body.jp-author-profile-page .jp-author-bio-card {
	display: flex !important;
}

body.jp-author-profile-page .jp-author-bio-card > .e-con-inner {
	align-items: start;
	display: grid;
	gap: 86px;
	grid-template-columns: minmax(0, 1fr) minmax(420px, 547px);
	max-width: 1280px;
	width: 100% !important;
}

body.jp-author-profile-page .jp-author-bio-copy,
body.jp-author-profile-page .jp-author-bio-media {
	--width: 100% !important;
	max-width: none !important;
	width: 100% !important;
}

body.jp-author-profile-page .jp-author-bio-copy > .e-con-inner,
body.jp-author-profile-page .jp-author-bio-media > .e-con-inner {
	max-width: none !important;
	padding: 0 !important;
	width: 100% !important;
}

body.jp-author-profile-page .jp-author-bio-title .elementor-heading-title {
	margin: 0;
	max-width: 680px;
}

body.jp-author-profile-page .jp-author-bio-title .elementor-heading-title span {
	color: #00352d !important;
	font-style: italic !important;
}

body.jp-author-profile-page .jp-author-bio-text .elementor-widget-container {
	margin-top: 24px;
	max-width: 650px;
}

body.jp-author-profile-page .jp-author-bio-text p {
	margin: 0 0 22px;
}

body.jp-author-profile-page .jp-author-bio-text p:first-child::first-letter {
	color: #00352d;
	float: left;
	font-family: "TWK Everett", "Everett", sans-serif;
	font-size: 86px;
	font-weight: 700;
	line-height: 0.82;
	margin: 8px 12px 0 0;
}

body.jp-author-profile-page .jp-author-stats {
	display: flex;
	flex-direction: column;
	gap: 18px;
	margin-top: 46px;
	max-width: 520px;
}

.jp-author-stat {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.jp-author-stat__label {
	align-items: center;
	color: #001c10;
	display: flex;
	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-weight: 700;
	justify-content: space-between;
	line-height: 20px;
}

.jp-author-stat__track {
	background: #b8e8e0;
	border-radius: 999px;
	height: 8px;
	overflow: hidden;
	width: 100%;
}

.jp-author-stat__bar {
	background: #00352d;
	border-radius: inherit;
	display: block;
	height: 100%;
	width: 0;
	transition: width 1100ms cubic-bezier(0.22, 1, 0.36, 1);
}

.jp-author-stats.is-visible .jp-author-stat__bar {
	width: var(--value);
}

@media (prefers-reduced-motion: reduce) {
	.jp-author-stat__bar {
		transition: none;
	}
}

body.jp-author-profile-page .jp-author-bio-media .elementor-widget-image img {
	aspect-ratio: 547 / 553;
	border-radius: 12px;
	box-shadow: 0 26px 54px rgba(0, 0, 0, 0.2);
	filter: grayscale(100%);
	object-fit: cover;
	object-position: center;
	width: 100%;
}

body.jp-author-profile-page .jp-author-credentials {
	display: flex !important;
}

body.jp-author-profile-page .jp-author-credentials > .e-con-inner {
	display: grid;
	gap: 46px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	max-width: 1260px;
	width: 100% !important;
}

body.jp-author-profile-page .jp-author-credential-card {
	--width: 100% !important;
	width: 100% !important;
}

body.jp-author-profile-page .jp-author-credential-card > .e-con-inner {
	max-width: none !important;
	width: 100% !important;
}

body.jp-author-profile-page .jp-author-credential-card {
	box-sizing: border-box;
}

body.jp-author-profile-page .jp-author-credential-card > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
}

body.jp-author-profile-page .jp-author-credential-card.is-dark {
	color: #ffffff !important;
}

body.jp-author-profile-page .jp-author-credential-card.is-light {
	color: #001c10 !important;
}

body.jp-author-profile-page .jp-author-credential-card .jp-author-credential-title {
	height: 35.2px;
	margin: 16px 0 0 !important;
}

body.jp-author-profile-page .jp-author-education-title,
body.jp-author-profile-page .jp-author-experience-title {
	height: 35.2px;
	margin: 16px 0 0 !important;
}

body.jp-author-profile-page .jp-author-education-title .elementor-heading-title,
body.jp-author-profile-page .jp-author-experience-title .elementor-heading-title {
	margin: 0 !important;
}

body.jp-author-profile-page .jp-author-education-items,
body.jp-author-profile-page .jp-author-experience-items {
	display: flex !important;
	flex-direction: column !important;
	gap: 20px !important;
	margin: 32px 0 0 !important;
}

.jp-author-credential-item {
	border-left: 2px solid currentColor;
	box-sizing: border-box;
	padding-left: 18px;
}

.is-dark .jp-author-credential-item {
	border-left-color: #dafba2;
}

.is-light .jp-author-credential-item {
	border-left-color: #00352d;
}

.jp-author-credential-item strong {
	color: #ffffff;
	display: block;
	font-family: "Inter", sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 21px;
}

.jp-author-credential-item span {
	color: rgba(255, 255, 255, 0.65);
	display: block;
	font-family: "Inter", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 18px;
	margin-top: 4px;
}

.is-light .jp-author-credential-item strong {
	color: #001c10;
}

.is-light .jp-author-credential-item span {
	color: #002b1e;
}

.jp-author-contact .jp-contact-outer,
.jp-author-page .jp-contact-outer {
	background: #f5f4f0;
}

@media (max-width: 1024px) {
	body.jp-author-profile-page .jp-author-hero {
		flex-direction: column !important;
	}

	.jp-author-hero > .e-con-inner {
		flex-direction: column;
		gap: 54px;
	}

	body.jp-author-profile-page .jp-author-hero-copy,
	body.jp-author-profile-page .jp-author-hero-media {
		flex-basis: auto !important;
		max-width: none;
		width: 100%;
	}

	.jp-author-specialty {
		bottom: -28px;
		left: 24px;
	}

	body.jp-author-profile-page .jp-author-bio-card {
		grid-template-columns: 1fr !important;
	}

	.jp-author-bio-card > .e-con-inner,
	.jp-author-credentials > .e-con-inner {
		grid-template-columns: 1fr;
	}

	body.jp-author-profile-page .jp-author-credentials {
		grid-template-columns: 1fr !important;
	}

	body.jp-author-profile-page .jp-author-hero > .e-con-inner {
	min-height: 0;
	}

	body.jp-author-profile-page .jp-author-hero-copy,
	body.jp-author-profile-page .jp-author-hero-media {
		max-width: none !important;
		width: 100% !important;
	}

	body.jp-author-profile-page .jp-author-hero-media .jp-author-main-image,
	body.jp-author-profile-page .jp-author-hero-media .jp-author-main-image img {
		height: auto !important;
		width: 100% !important;
	}
}

@media (max-width: 767px) {
	.jp-author-actions {
		align-items: stretch;
		flex-direction: column;
		width: 100%;
	}

	.jp-author-actions .elementor-widget-button,
	.jp-author-actions .elementor-button {
		width: 100%;
	}

	.jp-author-hero-media .elementor-widget-image img {
		aspect-ratio: 335 / 410;
	}

	.jp-author-specialty {
		bottom: -22px;
		left: 16px;
		width: calc(100% - 32px);
	}

	.jp-author-bio-card {
		margin-top: -30px;
	}

	.jp-author-bio-text p:first-child::first-letter {
		font-size: 70px;
	}

	.jp-author-credential-card {
		min-height: auto;
	}

	body.jp-author-profile-page .jp-author-education-title,
	body.jp-author-profile-page .jp-author-experience-title {
		height: 31px;
	}

}

/* Final hero overrides: keep these after the legacy responsive rules above so
 * Elementor's generated container styles cannot reintroduce its 10px inset. */
@media (min-width: 1025px) {
	body.jp-author-profile-page .jp-author-hero {
		box-sizing: border-box !important;
	}

	body.jp-author-profile-page .jp-author-hero > .e-con-inner {
		box-sizing: border-box !important;
		gap: 88px !important;
		max-width: 1280px !important;
		min-height: 650px !important;
		padding: 0 !important;
		width: 1280px !important;
	}

	body.jp-author-profile-page .jp-author-hero-copy {
		box-sizing: border-box !important;
		flex: 0 0 560px !important;
		max-width: 560px !important;
		padding: 0 !important;
		width: 560px !important;
	}

	body.jp-author-profile-page .jp-author-hero-copy > .e-con-inner,
	body.jp-author-profile-page .jp-author-hero-media > .e-con-inner {
		max-width: none !important;
		padding: 0 !important;
		width: 100% !important;
	}

	body.jp-author-profile-page .jp-author-hero-media {
		box-sizing: border-box !important;
		flex: 0 0 632px !important;
		max-width: 632px !important;
		padding: 0 !important;
		width: 632px !important;
	}

	body.jp-author-profile-page .jp-author-main-image,
	body.jp-author-profile-page .jp-author-main-image img {
		display: block !important;
		height: 650px !important;
		padding: 0 !important;
		width: 632px !important;
	}

	body.jp-author-profile-page .jp-author-specialty {
		bottom: -22px !important;
		left: -67px !important;
	}

	body.jp-author-profile-page .jp-author-actions {
		margin-top: 20px !important;
		padding: 0 !important;
	}
}

/* The text-editor widget has no inner wrapper in this Elementor build. Use
 * the widget element itself and preserve the absolute rhythm from Figma. */
@media (min-width: 1025px) {
	body.jp-author-profile-page .jp-author-hero-copy {
		height: 650px !important;
		position: relative !important;
	}
	body.jp-author-profile-page .jp-author-back,
	body.jp-author-profile-page .jp-author-role,
	body.jp-author-profile-page .jp-author-title,
	body.jp-author-profile-page .jp-author-intro,
	body.jp-author-profile-page .jp-author-actions {
		left: 0 !important;
		margin: 0 !important;
		position: absolute !important;
		width: 100% !important;
	}
	body.jp-author-profile-page .jp-author-back {
		top: 96px !important;
		height: 20px !important;
		line-height: 20px !important;
	}
	body.jp-author-profile-page .jp-author-role {
		top: 152px !important;
		height: 22px !important;
	}
	body.jp-author-profile-page .jp-author-title {
		top: 168px !important;
	}
	body.jp-author-profile-page .jp-author-intro {
		top: 406px !important;
		max-width: 575px !important;
	}
	body.jp-author-profile-page .jp-author-actions {
		top: 507px !important;
		align-items: center !important;
		display: flex !important;
		gap: 16px !important;
		height: 51px !important;
	}
	body.jp-author-profile-page .jp-author-linkedin-button .elementor-button {
		min-width: 144px !important;
		width: 144px !important;
	}
	body.jp-author-profile-page .jp-author-contact-button .elementor-button {
		min-width: 142px !important;
		width: 142px !important;
	}
	body.jp-author-profile-page .jp-author-specialty {
		box-sizing: border-box !important;
		height: 72px !important;
	}
}

body.jp-author-profile-page .jp-author-specialty span {
	color: rgba(0, 28, 16, 0.58) !important;
	display: block !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 1.68px !important;
	line-height: 16px !important;
	margin-bottom: 5px !important;
	text-transform: uppercase !important;
}

@media (min-width: 1025px) {
	body.jp-author-profile-page .jp-author-actions {
		margin-top: 0 !important;
	}
	body.jp-author-profile-page .jp-author-title {
		display: flex !important;
		height: 227px !important;
		align-items: center !important;
	}
	body.jp-author-profile-page .jp-author-intro {
		width: 575px !important;
	}


}





body.jp-author-profile-page .jp-author-linkedin-button .elementor-button,
body.jp-author-profile-page .jp-author-contact-button .elementor-button {
	align-items: center !important;
	display: inline-flex !important;
	justify-content: center !important;
	min-height: 51px !important;
}

/* Figma 43:2991: the LinkedIn label and diagonal arrow use the larger Inter label style. */
body.jp-author-profile-page .jp-author-linkedin-button .elementor-button-text {
	font-family: "Inter", sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	letter-spacing: 0.64px !important;
	line-height: 1.2 !important;
	display: inline-block !important;
	align-self: center !important;
	height: 21.6px !important;
	flex: 0 0 auto !important;
}

body.jp-author-profile-page .jp-author-linkedin-button .elementor-button-content-wrapper {
	align-items: center !important;
	display: inline-flex !important;
	gap: 10px !important;
}

body.jp-author-profile-page .jp-author-linkedin-button .jp-author-linkedin-arrow {
	display: block !important;
	height: 20px !important;
	object-fit: contain !important;
	width: 20px !important;
}

body.jp-author-profile-page .jp-author-linkedin-button .elementor-button:hover .jp-author-linkedin-arrow,
body.jp-author-profile-page .jp-author-linkedin-button .elementor-button:focus-visible .jp-author-linkedin-arrow {
	filter: brightness(0) saturate(100%) invert(91%) sepia(25%) saturate(1040%) hue-rotate(29deg) brightness(105%) contrast(101%);
}

body.jp-author-profile-page .jp-author-specialty {
	bottom: 78px !important;
	box-shadow: 0 18px 45px rgba(0, 0, 0, 0.22) !important;
	left: -67px !important;
	position: absolute !important;
	width: 249px !important;
	z-index: 3 !important;
}



body.jp-author-profile-page .jp-author-bio-title .elementor-heading-title {
	max-width: 680px;
}



body.jp-author-profile-page .jp-author-bio-text .elementor-widget-container {
	max-width: 650px;
}

body.jp-author-profile-page .jp-author-bio-text p:first-child::first-letter {
	color: #00352d !important;
	float: left !important;
	font-family: "TWK Everett", "Everett", sans-serif !important;
	font-size: 86px !important;
	font-weight: 700 !important;
	line-height: 0.82 !important;
	margin: 8px 12px 0 0 !important;
}

body.jp-author-profile-page .jp-author-education-items .elementor-widget-container,
body.jp-author-profile-page .jp-author-experience-items .elementor-widget-container {
	display: flex !important;
	flex-direction: column !important;
	gap: 22px !important;
	margin-top: 28px !important;
}

@media (max-width: 767px) {
	body.jp-author-profile-page .jp-author-specialty {
		bottom: -22px !important;
		left: 16px !important;
		width: calc(100% - 32px) !important;
	}
}

/* Keep the desktop Figma geometry last in the cascade. */
@media (min-width: 1025px) {








}

@media (min-width: 1025px) {

}

/* Trayectoria is the first white card that rises over the dark hero. */
body.jp-author-profile-page .jp-author-hero {
	z-index: 1 !important;
}

body.jp-author-profile-page.jp-author-card-cover-ready .jp-author-hero {
	left: 0 !important;
	position: fixed !important;
	right: 0 !important;
	top: 0 !important;
	width: 100% !important;
}

body.jp-author-profile-page.jp-author-card-cover-complete .jp-author-hero {
	opacity: 0 !important;
	pointer-events: none !important;
	visibility: hidden !important;
}

body.jp-author-profile-page .jp-author-hero-spacer {
	display: block;
	margin: 0;
	padding: 0;
	pointer-events: none;
}

body.jp-author-profile-page .jp-author-bio-card {
	position: relative !important;
	z-index: 2 !important;
}

body.jp-author-profile-page .jp-author-credentials {
	position: relative !important;
	z-index: 2 !important;
}

/* Author page mobile pass: the trajectory card keeps the desktop grid in
 * Elementor, so the text column collapses unless the final cascade resets it. */
@media (max-width: 767px) {
	body.jp-author-profile-page .jp-author-bio-card > .e-con-inner {
		align-items: stretch !important;
		display: flex !important;
		flex-direction: column !important;
		gap: 34px !important;
		max-width: none !important;
		width: 100% !important;
	}

	body.jp-author-profile-page .jp-author-bio-copy,
	body.jp-author-profile-page .jp-author-bio-media {
		flex: 0 0 auto !important;
		max-width: none !important;
		min-width: 0 !important;
		width: 100% !important;
	}

	body.jp-author-profile-page .jp-author-bio-copy > .e-con-inner,
	body.jp-author-profile-page .jp-author-bio-media > .e-con-inner {
		max-width: none !important;
		padding: 0 !important;
		width: 100% !important;
	}

	body.jp-author-profile-page .jp-author-bio-text .elementor-widget-container {
		max-width: none !important;
	}

	body.jp-author-profile-page .jp-author-bio-text p:first-child::first-letter {
		font-size: 60px !important;
		line-height: 0.86 !important;
		margin: 6px 10px 0 0 !important;
	}

	body.jp-author-profile-page .jp-author-secondary-image,
	body.jp-author-profile-page .jp-author-secondary-image img {
		display: block !important;
		height: auto !important;
		max-width: none !important;
		width: 100% !important;
	}

	body.jp-author-profile-page .jp-author-secondary-image img {
		aspect-ratio: 327 / 330 !important;
		object-fit: cover !important;
		object-position: center !important;
	}
}

@media (max-width: 767px) {
	body.jp-author-profile-page .jp-author-credentials > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		gap: 24px !important;
		max-width: none !important;
		width: 100% !important;
	}

	body.jp-author-profile-page .jp-author-education-card,
	body.jp-author-profile-page .jp-author-experience-card,
	body.jp-author-profile-page .jp-author-credential-card {
		box-sizing: border-box !important;
		flex: 0 0 auto !important;
		max-width: none !important;
		min-height: auto !important;
		min-width: 0 !important;
		width: 100% !important;
	}

	body.jp-author-profile-page .jp-author-education-card > .e-con-inner,
	body.jp-author-profile-page .jp-author-experience-card > .e-con-inner,
	body.jp-author-profile-page .jp-author-credential-card > .e-con-inner {
		max-width: none !important;
		width: 100% !important;
	}

	body.jp-author-profile-page .jp-author-education-title,
	body.jp-author-profile-page .jp-author-experience-title {
		height: auto !important;
		margin-top: 18px !important;
	}

	body.jp-author-profile-page .jp-author-education-items,
	body.jp-author-profile-page .jp-author-experience-items,
	body.jp-author-profile-page .jp-author-education-items .elementor-widget-container,
	body.jp-author-profile-page .jp-author-experience-items .elementor-widget-container {
		gap: 22px !important;
		margin-top: 30px !important;
		width: 100% !important;
	}

	body.jp-author-profile-page .jp-author-credential-item {
		padding-left: 20px !important;
	}

	body.jp-author-profile-page .jp-author-credential-item strong {
		font-size: 18px !important;
		line-height: 1.24 !important;
	}

	body.jp-author-profile-page .jp-author-credential-item span {
		font-size: 16px !important;
		line-height: 1.35 !important;
	}
}
/* JP_PAGE_CSS_MIGRATION_END */
