/* ---------- PAGE FORMAT STYLES ---------- */

/* ---------- SHARED BASE STYLES ---------- */
:root {
	--mpt-bg: #f8f6f1;
		--mpt-card: #ffffff;
		--mpt-text: #252525;
		--mpt-muted: #6f6f6f;
		--mpt-accent: #b88746;
		--mpt-accent-soft: #efe3d0;
		--mpt-dark: #1f2a24;
		--mpt-border: rgba(0, 0, 0, 0.08);
}

body {
	background: var(--mpt-bg);
		color: var(--mpt-text);
}

.mpt-section {
	padding: 90px 0;
}

.mpt-section-sm {
	padding: 60px 0;
}

.mpt-eyebrow {
	display: inline-flex;
		align-items: center;
		gap: 8px;
		padding: 7px 14px;
		border-radius: 999px;
		background: var(--mpt-accent-soft);
		color: #7c5526;
		font-size: 13px;
		font-weight: 700;
		letter-spacing: .08em;
		text-transform: uppercase;
}

.mpt-subtitle {
	color: var(--mpt-muted);
		font-size: 1.08rem;
		line-height: 1.8;
}

.mpt-card {
	background: var(--mpt-card);
		border: 1px solid var(--mpt-border);
		border-radius: 28px;
		padding: 32px;
		height: 100%;
		box-shadow: 0 18px 55px rgba(0, 0, 0, 0.045);
		transition: all .3s ease;
}

.mpt-card:hover {
	transform: translateY(-6px);
		box-shadow: 0 24px 70px rgba(0, 0, 0, 0.08);
}

.mpt-img-cover {
	width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
}

.mpt-btn {
	display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 10px;
		padding: 14px 24px;
		border-radius: 999px;
		text-decoration: none;
		font-weight: 700;
		transition: all .25s ease;
}

.mpt-btn-primary {
	background: var(--mpt-accent);
		color: #fff;
}

.mpt-btn-primary:hover {
	background: #9d703b;
		color: #fff;
		transform: translateY(-2px);
}

.mpt-image-stack {
	position: relative;
		min-height: 560px;
}

.mpt-image-stack .img-main {
	position: absolute;
		inset: 0 70px 80px 0;
		overflow: hidden;
		border-radius: 34px;
		box-shadow: 0 30px 70px rgba(0,0,0,.12);
}

.mpt-image-stack .img-small {
	position: absolute;
		right: 0;
		bottom: 0;
		width: 48%;
		height: 270px;
		overflow: hidden;
		border-radius: 28px;
		border: 10px solid var(--mpt-bg);
		box-shadow: 0 25px 60px rgba(0,0,0,.14);
}

.mpt-legal-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
		overflow: hidden;
		background: var(--mpt-bg);
}

.mpt-title {
	font-size: clamp(2.2rem, 5vw, 4.7rem);
		line-height: 1;
		letter-spacing: -0.06em;
		font-weight: 800;
		color: var(--mpt-dark);
}

.mpt-heading {
	font-size: clamp(2rem, 4vw, 3.6rem);
		line-height: 1.05;
		letter-spacing: -0.05em;
		font-weight: 800;
		color: var(--mpt-dark);
}

.mpt-btn-soft {
	background: #fff;
		color: var(--mpt-dark);
		border: 1px solid var(--mpt-border);
}

.mpt-btn-soft:hover {
	background: var(--mpt-accent-soft);
		color: var(--mpt-dark);
		transform: translateY(-2px);
}

/* HERO */
	.mpt-legal-hero {
	position: relative;
		padding: 120px 0 90px;
		background:
			linear-gradient(90deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 48%, rgba(31,42,36,.10) 100%),
			url('https://images.unsplash.com/photo-1587595431973-160d0d94add1?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
		color: #fff;
		border-radius: 0 0 44px 44px;
}

.mpt-legal-hero::after {
	content: "";
		position: absolute;
		inset: auto 0 0 0;
		height: 120px;
		background: linear-gradient(to bottom, transparent, var(--mpt-bg));
		pointer-events: none;
}

.mpt-legal-hero-content {
	position: relative;
		z-index: 2;
		max-width: 790px;
}

.mpt-legal-hero .mpt-title,
	.mpt-legal-hero .mpt-subtitle {
	color: #fff;
}

.mpt-legal-hero .mpt-subtitle {
	color: rgba(255,255,255,.82);
		max-width: 680px;
}

.mpt-hero-badges {
	display: flex;
		flex-wrap: wrap;
		gap: 10px;
		margin-top: 28px;
}

.mpt-hero-badge {
	padding: 10px 15px;
		border-radius: 999px;
		background: rgba(255,255,255,.14);
		border: 1px solid rgba(255,255,255,.2);
		color: rgba(255,255,255,.88);
		font-size: .92rem;
		backdrop-filter: blur(12px);
}

/* COMPANY SUMMARY */
	.mpt-info-list {
	display: grid;
		gap: 14px;
}

.mpt-info-row {
	display: flex;
		justify-content: space-between;
		gap: 20px;
		padding: 17px 18px;
		border-radius: 18px;
		background: #fff;
		border: 1px solid var(--mpt-border);
}

.mpt-info-row span {
	color: var(--mpt-muted);
}

.mpt-info-row strong {
	color: var(--mpt-dark);
		text-align: right;
}

/* CERTIFICATION CARDS */
	.mpt-icon {
	width: 58px;
		height: 58px;
		border-radius: 20px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		background: var(--mpt-accent-soft);
		color: var(--mpt-accent);
		font-size: 1.15rem;
		font-weight: 800;
		margin-bottom: 22px;
}

.mpt-cert-card {
	position: relative;
		padding: 32px;
		border-radius: 28px;
		background: #fff;
		border: 1px solid var(--mpt-border);
		height: 100%;
		box-shadow: 0 18px 55px rgba(0,0,0,.04);
		transition: all .3s ease;
		overflow: hidden;
}

.mpt-cert-card::before {
	content: "";
		position: absolute;
		right: -45px;
		top: -45px;
		width: 120px;
		height: 120px;
		border-radius: 50%;
		background: var(--mpt-accent-soft);
		opacity: .65;
}

.mpt-cert-card:hover {
	transform: translateY(-6px);
		box-shadow: 0 24px 70px rgba(0,0,0,.08);
}

.mpt-cert-card h3,
	.mpt-cert-card p,
	.mpt-cert-card .mpt-icon {
	position: relative;
}

.mpt-cert-card h3 {
	font-size: 1.25rem;
		font-weight: 800;
		color: var(--mpt-dark);
		margin-bottom: 14px;
}

.mpt-cert-card p {
	color: var(--mpt-muted);
		line-height: 1.75;
		margin-bottom: 0;
}

/* DARK PANEL */
	.mpt-dark-panel {
	position: relative;
		background: var(--mpt-dark);
		color: #fff;
		border-radius: 40px;
		padding: 80px 56px;
		overflow: hidden;
}

.mpt-dark-panel::before {
	content: "";
		position: absolute;
		width: 360px;
		height: 360px;
		border-radius: 50%;
		background: rgba(184,135,70,.22);
		right: -130px;
		top: -140px;
}

.mpt-dark-panel::after {
	content: "";
		position: absolute;
		width: 240px;
		height: 240px;
		border-radius: 50%;
		background: rgba(255,255,255,.06);
		left: -90px;
		bottom: -90px;
}

.mpt-dark-panel-content {
	position: relative;
		z-index: 2;
}

.mpt-dark-panel .mpt-heading,
	.mpt-dark-panel .mpt-subtitle {
	color: #fff;
}

.mpt-dark-panel .mpt-subtitle {
	color: rgba(255,255,255,.74);
}

.mpt-mini-card {
	padding: 24px;
		border-radius: 24px;
		background: rgba(255,255,255,.08);
		border: 1px solid rgba(255,255,255,.12);
		backdrop-filter: blur(12px);
		height: 100%;
}

.mpt-mini-card strong {
	display: block;
		font-size: 1.05rem;
		margin-bottom: 8px;
}

.mpt-mini-card span {
	color: rgba(255,255,255,.72);
		line-height: 1.65;
		font-size: .95rem;
}

/* CONTACT STRIP */
	.mpt-contact-box {
	border-radius: 32px;
		background: #fff;
		border: 1px solid var(--mpt-border);
		box-shadow: 0 18px 55px rgba(0,0,0,.045);
		overflow: hidden;
}

.mpt-contact-img {
	min-height: 100%;
		height: 100%;
		background:
			linear-gradient(rgba(31,42,36,.25), rgba(31,42,36,.25)),
			url('https://images.unsplash.com/photo-1531065208531-4036c0dba3ca?auto=format&fit=crop&w=900&q=80') center/cover no-repeat;
}

.mpt-contact-content {
	padding: 42px;
}

.mpt-contact-item {
	padding: 16px 0;
		border-bottom: 1px solid var(--mpt-border);
}

.mpt-contact-item:last-child {
	border-bottom: 0;
}

.mpt-contact-item span {
	display: block;
		color: var(--mpt-muted);
		font-size: .92rem;
		margin-bottom: 4px;
}

.mpt-contact-item strong,
	.mpt-contact-item a {
	color: var(--mpt-dark);
		text-decoration: none;
		font-weight: 800;
}

.mpt-final-quote {
	font-size: clamp(1.8rem, 4vw, 3.4rem);
		line-height: 1.08;
		letter-spacing: -0.05em;
		font-weight: 800;
		color: var(--mpt-dark);
}

:root {
	--mpt-bg: #f8f6f1;
			--mpt-card: #ffffff;
			--mpt-text: #252525;
			--mpt-muted: #6f6f6f;
			--mpt-accent: #b88746;
			--mpt-accent-soft: #efe3d0;
			--mpt-dark: #1f2a24;
			--mpt-border: rgba(0, 0, 0, 0.08);
}

body {
	background: var(--mpt-bg);
			color: var(--mpt-text);
}

.mpt-eyebrow {
	display: inline-flex;
			padding: 7px 14px;
			border-radius: 999px;
			background: var(--mpt-accent-soft);
			color: #7c5526;
			font-size: 13px;
			font-weight: 700;
			letter-spacing: .08em;
			text-transform: uppercase;
			margin-bottom: 18px;
}

.mpt-title {
	font-size: clamp(2.2rem, 5vw, 4rem);
			line-height: 1;
			letter-spacing: -0.05em;
			font-weight: 800;
			color: var(--mpt-dark);
			margin-bottom: 20px;
}

.mpt-subtitle {
	color: var(--mpt-muted);
			font-size: 1.05rem;
			line-height: 1.8;
			margin-bottom: 0;
}

.mpt-contact-box {
	background: var(--mpt-accent-soft);
			border-radius: 20px;
			padding: 24px;
			margin-top: 30px;
			text-align: center;
}

.mpt-contact-box h3 {
	font-weight: 800;
			color: var(--mpt-dark);
			margin-bottom: 8px;
}

.mpt-contact-box a {
	color: #7c5526;
			font-weight: 800;
			text-decoration: none;
}

.mpt-eyebrow {
	display: inline-flex;
			align-items: center;
			gap: 8px;
			padding: 7px 14px;
			border-radius: 999px;
			background: var(--mpt-accent-soft);
			color: #7c5526;
			font-size: 13px;
			font-weight: 700;
			letter-spacing: .08em;
			text-transform: uppercase;
}

.mpt-title {
	font-size: clamp(2.2rem, 5vw, 4.7rem);
			line-height: 1;
			letter-spacing: -0.06em;
			font-weight: 800;
			color: var(--mpt-dark);
}

.mpt-heading {
	font-size: clamp(2rem, 4vw, 3.6rem);
			line-height: 1.05;
			letter-spacing: -0.05em;
			font-weight: 800;
			color: var(--mpt-dark);
}

.mpt-subtitle {
	color: var(--mpt-muted);
			font-size: 1.08rem;
			line-height: 1.8;
}

.mpt-btn {
	display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 10px;
			padding: 14px 24px;
			border-radius: 999px;
			text-decoration: none;
			font-weight: 700;
			transition: all .25s ease;
}

.mpt-btn-primary {
	background: var(--mpt-accent);
			color: #fff;
}

.mpt-btn-primary:hover {
	background: #9d703b;
			color: #fff;
			transform: translateY(-2px);
}

.mpt-btn-soft {
	background: #fff;
			color: var(--mpt-dark);
			border: 1px solid var(--mpt-border);
}

.mpt-btn-soft:hover {
	background: var(--mpt-accent-soft);
			color: var(--mpt-dark);
			transform: translateY(-2px);
}

.mpt-img-cover {
	width: 100%;
			height: 100%;
			object-fit: cover;
			display: block;
}

.mpt-hero-badges {
	display: flex;
			flex-wrap: wrap;
			gap: 10px;
			margin-top: 28px;
}

.mpt-hero-badge {
	padding: 10px 15px;
			border-radius: 999px;
			background: rgba(255,255,255,.14);
			border: 1px solid rgba(255,255,255,.2);
			color: rgba(255,255,255,.88);
			font-size: .92rem;
			backdrop-filter: blur(12px);
}

.mpt-card:hover {
	transform: translateY(-6px);
			box-shadow: 0 24px 70px rgba(0, 0, 0, 0.08);
}

.mpt-icon {
	width: 58px;
			height: 58px;
			border-radius: 20px;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			background: var(--mpt-accent-soft);
			color: var(--mpt-accent);
			font-size: 1.15rem;
			font-weight: 800;
			margin-bottom: 22px;
}

.mpt-feature-card {
	position: relative;
			padding: 32px;
			border-radius: 28px;
			background: #fff;
			border: 1px solid var(--mpt-border);
			height: 100%;
			box-shadow: 0 18px 55px rgba(0,0,0,.04);
			transition: all .3s ease;
			overflow: hidden;
}

.mpt-feature-card::before {
	content: "";
			position: absolute;
			right: -45px;
			top: -45px;
			width: 120px;
			height: 120px;
			border-radius: 50%;
			background: var(--mpt-accent-soft);
			opacity: .65;
}

.mpt-feature-card:hover {
	transform: translateY(-6px);
			box-shadow: 0 24px 70px rgba(0,0,0,.08);
}

.mpt-feature-card h3,
		.mpt-feature-card p,
		.mpt-feature-card .mpt-icon {
	position: relative;
}

.mpt-feature-card h3 {
	font-size: 1.25rem;
			font-weight: 800;
			color: var(--mpt-dark);
			margin-bottom: 14px;
}

.mpt-feature-card p {
	color: var(--mpt-muted);
			line-height: 1.75;
			margin-bottom: 0;
}

/* IMAGE STACK */
		.mpt-image-stack {
	position: relative;
			min-height: 560px;
}

.mpt-image-stack .img-main {
	position: absolute;
			inset: 0 70px 80px 0;
			overflow: hidden;
			border-radius: 34px;
			box-shadow: 0 30px 70px rgba(0,0,0,.12);
}

.mpt-image-stack .img-small {
	position: absolute;
			right: 0;
			bottom: 0;
			width: 48%;
			height: 270px;
			overflow: hidden;
			border-radius: 28px;
			border: 10px solid var(--mpt-bg);
			box-shadow: 0 25px 60px rgba(0,0,0,.14);
}

/* PROCESS */
		.mpt-process-card {
	background: #fff;
			border: 1px solid var(--mpt-border);
			border-radius: 32px;
			padding: 40px;
			box-shadow: 0 18px 55px rgba(0,0,0,.045);
}

.mpt-process-item {
	position: relative;
			padding-left: 44px;
			padding-bottom: 34px;
}

.mpt-process-item:last-child {
	padding-bottom: 0;
}

.mpt-process-item::before {
	content: attr(data-step);
			position: absolute;
			left: 0;
			top: 0;
			width: 28px;
			height: 28px;
			border-radius: 50%;
			background: var(--mpt-accent);
			color: #fff;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			font-size: .8rem;
			font-weight: 800;
}

.mpt-process-item::after {
	content: "";
			position: absolute;
			left: 13px;
			top: 36px;
			width: 2px;
			height: calc(100% - 36px);
			background: rgba(184,135,70,.25);
}

.mpt-process-item:last-child::after {
	display: none;
}

.mpt-process-item h3 {
	font-size: 1.2rem;
			font-weight: 800;
			color: var(--mpt-dark);
			margin-bottom: 8px;
}

.mpt-process-item p {
	color: var(--mpt-muted);
			line-height: 1.75;
			margin-bottom: 0;
}

/* DARK PANEL */
		.mpt-dark-panel {
	position: relative;
			background: var(--mpt-dark);
			color: #fff;
			border-radius: 40px;
			padding: 80px 56px;
			overflow: hidden;
}

.mpt-dark-panel::before {
	content: "";
			position: absolute;
			width: 360px;
			height: 360px;
			border-radius: 50%;
			background: rgba(184,135,70,.22);
			right: -130px;
			top: -140px;
}

.mpt-dark-panel::after {
	content: "";
			position: absolute;
			width: 240px;
			height: 240px;
			border-radius: 50%;
			background: rgba(255,255,255,.06);
			left: -90px;
			bottom: -90px;
}

.mpt-dark-panel-content {
	position: relative;
			z-index: 2;
}

.mpt-dark-panel .mpt-heading,
		.mpt-dark-panel .mpt-subtitle {
	color: #fff;
}

.mpt-mini-card {
	padding: 24px;
			border-radius: 24px;
			background: rgba(255,255,255,.08);
			border: 1px solid rgba(255,255,255,.12);
			backdrop-filter: blur(12px);
			height: 100%;
}

.mpt-mini-card strong {
	display: block;
			font-size: 1.05rem;
			margin-bottom: 8px;
}

.mpt-mini-card span {
	color: rgba(255,255,255,.72);
			line-height: 1.65;
			font-size: .95rem;
}

.mpt-final-quote {
	font-size: clamp(1.8rem, 4vw, 3.4rem);
			line-height: 1.08;
			letter-spacing: -0.05em;
			font-weight: 800;
			color: var(--mpt-dark);
}

/* CARDS */
		.mpt-card {
	background: var(--mpt-card);
			border: 1px solid var(--mpt-border);
			border-radius: 28px;
			padding: 32px;
			height: 100%;
			box-shadow: 0 18px 55px rgba(0, 0, 0, 0.045);
			transition: all .3s ease;
}

.mpt-photo-card::after {
	content: "";
			position: absolute;
			inset: 0;
			background: linear-gradient(to top, rgba(0,0,0,.72), rgba(0,0,0,.08));
}

.mpt-photo-card-content {
	position: absolute;
			z-index: 2;
			left: 36px;
			right: 36px;
			bottom: 36px;
			color: #fff;
}

.mpt-photo-card-content p {
	color: rgba(255,255,255,.82);
			margin-bottom: 0;
			line-height: 1.7;
}

.mpt-destination-page {
	background: #f8f5ef;
			color: #17211b;
}

.mpt-destination-hero {
	position: relative;
			min-height: 620px;
			display: flex;
			align-items: center;
			overflow: hidden;
}

.mpt-destination-hero__bg {
	position: absolute;
			inset: 0;
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: center;
}

.mpt-destination-hero::before {
	content: "";
			position: absolute;
			inset: 0;
			background:
				linear-gradient(90deg, rgba(10, 22, 16, .88) 0%, rgba(10, 22, 16, .68) 42%, rgba(10, 22, 16, .22) 100%),
				linear-gradient(180deg, rgba(0, 0, 0, .15), rgba(0, 0, 0, .45));
			z-index: 1;
}

.mpt-destination-hero .container {
	position: relative;
			z-index: 2;
}

.mpt-hero-content {
	max-width: 760px;
			color: #fff;
			padding: 120px 0;
}

.mpt-hero-eyebrow {
	display: inline-flex;
			align-items: center;
			gap: 10px;
			padding: 9px 16px;
			border: 1px solid rgba(255, 255, 255, .28);
			border-radius: 999px;
			background: rgba(255, 255, 255, .12);
			backdrop-filter: blur(10px);
			font-size: 14px;
			font-weight: 700;
			letter-spacing: .08em;
			text-transform: uppercase;
			color: #ffffff;
			margin-bottom: 22px;
}

.mpt-hero-title {
	font-size: clamp(44px, 6vw, 84px);
			line-height: .95;
			font-weight: 900;
			letter-spacing: -0.05em;
			margin-bottom: 24px;
}

.mpt-hero-title span {
	color: #ffffff;
}

.mpt-hero-description {
	font-size: 18px;
			line-height: 1.75;
			max-width: 650px;
			color: rgba(255, 255, 255, .86);
			margin-bottom: 34px;
}

.mpt-hero-actions {
	display: flex;
			flex-wrap: wrap;
			gap: 14px;
}

.mpt-hero-btn {
	display: inline-flex;
			align-items: center;
			justify-content: center;
			text-decoration: none;
			border-radius: 999px;
			padding: 14px 24px;
			font-weight: 800;
			transition: all .25s ease;
}

.mpt-hero-btn-primary {
	background: #ffd715;
			color: #17211b;
}

.mpt-hero-btn-primary:hover {
	background: #fff;
			color: #17211b;
			transform: translateY(-2px);
}

.mpt-hero-btn-secondary {
	color: #fff;
			border: 1px solid rgba(255, 255, 255, .35);
			background: rgba(255, 255, 255, .08);
}

.mpt-hero-btn-secondary:hover {
	background: #fff;
			color: #17211b;
			transform: translateY(-2px);
}

.mpt-section-white {
	background: #fff;
}

.mpt-section-title {
	font-size: clamp(32px, 4vw, 54px);
			line-height: 1.05;
			font-weight: 900;
			letter-spacing: -0.04em;
			margin-bottom: 18px;
			color: #17211b;
}

.mpt-section-lead {
	font-size: 17px;
			line-height: 1.8;
			color: #5b665f;
			max-width: 900px;
}

.mpt-content-box {
	background: #fff;
			border-radius: 28px;
			padding: 38px;
			box-shadow: 0 20px 60px rgba(20, 31, 24, .08);
			border: 1px solid rgba(23, 33, 27, .08);
}

.mpt-long-content {
	font-size: 17px;
			line-height: 1.85;
			color: #4c574f;
}

.mpt-long-content h2,
		.mpt-long-content h3,
		.mpt-long-content h4 {
	color: #17211b;
			font-weight: 900;
			margin-top: 28px;
			margin-bottom: 14px;
}

.mpt-tour-card {
	height: 100%;
			background: #fff;
			border-radius: 28px;
			overflow: hidden;
			box-shadow: 0 18px 45px rgba(20, 31, 24, .09);
			border: 1px solid rgba(23, 33, 27, .08);
			transition: all .28s ease;
			display: flex;
			flex-direction: column;
            text-align: left !important;
}

.mpt-tour-card:hover {
	transform: translateY(-6px);
			box-shadow: 0 28px 70px rgba(20, 31, 24, .15);
}

.mpt-tour-card-image-wrap {
	position: relative;
			display: block;
			overflow: hidden;
			aspect-ratio: 16 / 10;
			background: #ddd;
}

.mpt-tour-card-featured .mpt-tour-card-image-wrap {
	aspect-ratio: 16 / 11;
}

.mpt-tour-card-image {
	width: 100%;
			height: 100%;
			object-fit: cover;
			transition: transform .5s ease;
}

.mpt-tour-card:hover .mpt-tour-card-image {
	transform: scale(1.06);
}

.mpt-tour-badge {
	position: absolute;
			top: 18px;
			left: 18px;
			background: #ffd715;
			color: #17211b;
			font-size: 12px;
			font-weight: 900;
			text-transform: uppercase;
			letter-spacing: .04em;
			padding: 8px 12px;
			border-radius: 999px;
			box-shadow: 0 10px 28px rgba(0, 0, 0, .16);
}

.mpt-tour-card-body {
	padding: 24px;
			display: flex;
			flex-direction: column;
			flex: 1;
}

.mpt-tour-card-featured .mpt-tour-card-body {
	padding: 30px;
}

.mpt-tour-card-top {
	display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 12px;
			margin-bottom: 14px;
}

.mpt-tour-style {
	font-size: 12px;
			font-weight: 900;
			text-transform: uppercase;
			letter-spacing: .08em;
			color: #026b39;
}

.mpt-tour-price {
	font-size: 14px;
			font-weight: 900;
			color: #17211b;
			background: #eef7ef;
			padding: 7px 10px;
			border-radius: 999px;
			white-space: nowrap;
}

.mpt-tour-title {
	font-size: 22px;
			line-height: 1.18;
			font-weight: 900;
			letter-spacing: -0.03em;
			margin-bottom: 12px;
}

.mpt-tour-card-featured .mpt-tour-title {
	font-size: 28px;
}

.mpt-tour-title a {
	color: #17211b;
			text-decoration: none;
}

.mpt-tour-title a:hover {
	color: #b87900;
}

.mpt-tour-excerpt {
	color: #5b665f;
			line-height: 1.7;
			margin-bottom: 20px;
}

.mpt-tour-facts {
	display: grid;
			grid-template-columns: repeat(2, 1fr);
			gap: 10px;
			margin-bottom: 18px;
}

.mpt-tour-fact {
	background: #f8f5ef;
			border-radius: 16px;
			padding: 12px;
			min-height: 72px;
}

.mpt-tour-fact span {
	display: block;
			font-size: 12px;
			color: #778178;
			margin-bottom: 4px;
}

.mpt-tour-fact strong {
	display: block;
			font-size: 14px;
			color: #17211b;
			line-height: 1.25;
}

.mpt-tour-places {
	font-size: 14px;
			line-height: 1.55;
			color: #5b665f;
			background: #fffaf0;
			border: 1px solid #f1e0ba;
			border-radius: 18px;
			padding: 13px 14px;
			margin-bottom: 20px;
}

.mpt-tour-places strong {
	color: #17211b;
}

.mpt-tour-card-footer {
	margin-top: auto;
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: 14px;
			border-top: 1px solid rgba(23, 33, 27, .09);
			padding-top: 18px;
}

.mpt-student-price {
	font-size: 13px;
			font-weight: 700;
			color: #5b665f;
}

.mpt-tour-btn {
	display: inline-flex;
			align-items: center;
			justify-content: center;
			text-decoration: none;
			background: #17211b;
			color: #fff;
			font-weight: 800;
			padding: 11px 16px;
			border-radius: 999px;
			white-space: nowrap;
			transition: all .25s ease;
}

.mpt-tour-btn:hover {
	background: #ffd715;
			color: #17211b;
}

.mpt-empty-message {
	background: #fff;
			border-radius: 24px;
			padding: 32px;
			border: 1px solid rgba(23, 33, 27, .08);
			color: #5b665f;
}

@media (max-width: 991px) {
	.mpt-section {
		padding: 65px 0;
	}
	.mpt-image-stack {
		min-height: 430px;
					margin-top: 35px;
	}
	.mpt-image-stack .img-main {
		inset: 0 40px 70px 0;
	}
	.mpt-image-stack .img-small {
		width: 58%;
					height: 220px;
	}
	.mpt-section-sm {
		padding: 50px 0;
	}
	.mpt-legal-hero {
		padding: 90px 0 70px;
					background:
						linear-gradient(180deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 58%, rgba(31,42,36,.24) 100%),
						url('https://images.unsplash.com/photo-1587595431973-160d0d94add1?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat;
					border-radius: 0 0 30px 30px;
	}
	.mpt-dark-panel {
		padding: 55px 28px;
					border-radius: 30px;
	}
	.mpt-contact-img {
		min-height: 320px;
	}
	.mpt-image-stack {
		min-height: 430px;
						margin-top: 35px;
	}
	.mpt-image-stack .img-small {
		width: 58%;
						height: 220px;
	}
	.mpt-dark-panel {
		padding: 55px 28px;
						border-radius: 30px;
	}
	.mpt-destination-hero {
		min-height: 560px;
	}
	.mpt-destination-hero::before {
		background:
							linear-gradient(180deg, rgba(10, 22, 16, .82) 0%, rgba(10, 22, 16, .72) 55%, rgba(10, 22, 16, .84) 100%);
	}
	.mpt-hero-content {
		padding: 100px 0 80px;
	}
	.mpt-content-box {
		padding: 28px;
	}
}

@media (max-width: 575px) {
	.mpt-card {
		padding: 24px;
					border-radius: 24px;
	}
	.mpt-btn {
		width: 100%;
	}
	.mpt-image-stack {
		min-height: 360px;
	}
	.mpt-image-stack .img-main {
		inset: 0 20px 60px 0;
					border-radius: 26px;
	}
	.mpt-image-stack .img-small {
		width: 65%;
					height: 180px;
					border-width: 7px;
	}
	.mpt-legal-hero {
		padding: 74px 0 60px;
	}
	.mpt-card,
		.mpt-cert-card {
		padding: 24px;
					border-radius: 24px;
	}
	.mpt-info-row {
		flex-direction: column;
					gap: 6px;
	}
	.mpt-info-row strong {
		text-align: left;
	}
	.mpt-contact-content {
		padding: 28px;
	}
	.mpt-image-stack .img-main {
		inset: 0 20px 60px 0;
						border-radius: 26px;
	}
	.mpt-image-stack .img-small {
		width: 65%;
						height: 180px;
						border-width: 7px;
	}
	.mpt-photo-card {
		min-height: 500px;
						border-radius: 28px;
	}
	.mpt-photo-card-content {
		left: 24px;
						right: 24px;
						bottom: 24px;
	}
	.mpt-destination-hero {
		min-height: 600px;
	}
	.mpt-hero-description {
		font-size: 16px;
	}
	.mpt-hero-actions {
		flex-direction: column;
	}
	.mpt-hero-btn {
		width: 100%;
	}
	.mpt-section {
		padding: 64px 0;
	}
	.mpt-tour-facts {
		grid-template-columns: 1fr;
	}
	.mpt-tour-card-footer {
		align-items: stretch;
						flex-direction: column;
	}
	.mpt-tour-btn {
		width: 100%;
	}
}

/* ---------- PAGE SPECIFIC STYLES ---------- */

/* ---------- page-aboutus.php ---------- */
.mpt-about-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
		overflow: hidden;
}

.mpt-title {
	font-size: clamp(2.2rem, 5vw, 4.9rem);
		line-height: 1;
		letter-spacing: -0.06em;
		font-weight: 800;
		color: var(--mpt-dark);
}

.mpt-rounded {
	border-radius: 28px;
}

.mpt-hero {
	position: relative;
		min-height: 82vh;
		display: flex;
		align-items: center;
		padding: 110px 0 80px;
		background:
			linear-gradient(90deg, rgba(31,42,36,.88) 0%, rgba(31,42,36,.62) 42%, rgba(31,42,36,.08) 100%),
			url('https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
		color: #fff;
}

.mpt-hero::after {
	content: "";
		position: absolute;
		inset: auto 0 0 0;
		height: 140px;
		background: linear-gradient(to bottom, transparent, var(--mpt-bg));
		pointer-events: none;
}

.mpt-hero-content {
	position: relative;
		z-index: 2;
		max-width: 760px;
}

.mpt-hero .mpt-title,
	.mpt-hero .mpt-subtitle {
	color: #fff;
}

.mpt-hero .mpt-subtitle {
	color: rgba(255,255,255,.82);
		max-width: 650px;
}

.mpt-hero-stats {
	display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 14px;
		margin-top: 34px;
		max-width: 680px;
}

.mpt-stat {
	padding: 22px;
		border-radius: 22px;
		background: rgba(255,255,255,.12);
		border: 1px solid rgba(255,255,255,.18);
		backdrop-filter: blur(14px);
}

.mpt-stat strong {
	display: block;
		font-size: 1.8rem;
		line-height: 1;
}

.mpt-stat span {
	display: block;
		margin-top: 8px;
		font-size: .9rem;
		color: rgba(255,255,255,.78);
}

.mpt-btn-light {
	background: rgba(255,255,255,.14);
		color: #fff;
		border: 1px solid rgba(255,255,255,.22);
}

.mpt-btn-light:hover {
	background: rgba(255,255,255,.22);
		color: #fff;
		transform: translateY(-2px);
}

.mpt-icon {
	width: 54px;
		height: 54px;
		border-radius: 18px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		background: var(--mpt-accent-soft);
		color: var(--mpt-accent);
		font-size: 1.45rem;
		margin-bottom: 20px;
}

.mpt-dark-section {
	background: var(--mpt-dark);
		color: #fff;
		border-radius: 40px;
		padding: 80px 50px;
		position: relative;
		overflow: hidden;
}

.mpt-dark-section::before {
	content: "";
		position: absolute;
		width: 360px;
		height: 360px;
		border-radius: 50%;
		background: rgba(184,135,70,.22);
		right: -140px;
		top: -120px;
}

.mpt-dark-section .mpt-subtitle,
	.mpt-dark-section p {
	color: rgba(255,255,255,.74);
}

.mpt-timeline-item {
	position: relative;
		padding-left: 34px;
		margin-bottom: 30px;
}

.mpt-timeline-item::before {
	content: "";
		position: absolute;
		left: 0;
		top: 7px;
		width: 14px;
		height: 14px;
		border-radius: 50%;
		background: var(--mpt-accent);
}

.mpt-timeline-item::after {
	content: "";
		position: absolute;
		left: 6px;
		top: 28px;
		width: 2px;
		height: calc(100% + 10px);
		background: rgba(184,135,70,.25);
}

.mpt-timeline-item:last-child::after {
	display: none;
}

.mpt-feature-card {
	padding: 28px;
		border-radius: 26px;
		background: #fff;
		border: 1px solid var(--mpt-border);
		height: 100%;
}

.mpt-feature-card h4 {
	font-size: 1.1rem;
		font-weight: 800;
		color: var(--mpt-dark);
}

.mpt-feature-card p {
	color: var(--mpt-muted);
		margin-bottom: 0;
		line-height: 1.7;
}

.mpt-photo-card {
	position: relative;
		min-height: 380px;
		overflow: hidden;
		border-radius: 32px;
}

.mpt-photo-card::after {
	content: "";
		position: absolute;
		inset: 0;
		background: linear-gradient(to top, rgba(0,0,0,.65), rgba(0,0,0,.05));
}

.mpt-photo-card-content {
	position: absolute;
		z-index: 2;
		left: 28px;
		right: 28px;
		bottom: 28px;
		color: #fff;
}

.mpt-photo-card-content p {
	color: rgba(255,255,255,.82);
		margin-bottom: 0;
}

.mpt-quote {
	font-size: clamp(1.8rem, 4vw, 3.4rem);
		line-height: 1.08;
		letter-spacing: -0.05em;
		font-weight: 800;
		color: var(--mpt-dark);
}

.mpt-pill-list {
	display: flex;
		flex-wrap: wrap;
		gap: 10px;
		margin-top: 24px;
}

.mpt-pill {
	padding: 10px 16px;
		border-radius: 999px;
		background: #fff;
		border: 1px solid var(--mpt-border);
		color: var(--mpt-muted);
		font-size: .94rem;
}

@media (max-width: 991px) {
	.mpt-hero {
		min-height: auto;
					padding: 90px 0 70px;
					background:
						linear-gradient(180deg, rgba(31,42,36,.88) 0%, rgba(31,42,36,.62) 58%, rgba(31,42,36,.25) 100%),
						url('https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat;
	}
	.mpt-hero-stats {
		grid-template-columns: 1fr;
	}
	.mpt-dark-section {
		padding: 55px 26px;
					border-radius: 30px;
	}
}

@media (max-width: 575px) {
	.mpt-hero {
		padding: 72px 0 58px;
	}
}

/* ---------- page-esnna-policy.php ---------- */
.mpt-esnna-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
			background: var(--mpt-bg);
			padding: 70px 0;
}

.mpt-page-header {
	max-width: 900px;
			margin: 0 auto 34px;
			text-align: center;
}

.mpt-content-box {
	max-width: 1050px;
			margin: 0 auto;
			background: var(--mpt-card);
			border: 1px solid var(--mpt-border);
			border-radius: 28px;
			padding: 44px;
			box-shadow: 0 18px 55px rgba(0, 0, 0, 0.045);
}

.mpt-logo-wrap {
	text-align: center;
			margin-bottom: 34px;
}

.mpt-logo-wrap img {
	max-width: 260px;
			height: auto;
}

.mpt-esnna-images {
	display: grid;
			grid-template-columns: repeat(2, 1fr);
			gap: 24px;
			margin: 34px 0;
}

.mpt-esnna-img {
	background: #f3eee5;
			border: 1px solid var(--mpt-border);
			border-radius: 22px;
			padding: 14px;
			overflow: hidden;
}

.mpt-esnna-img img {
	width: 100%;
			height: auto;
			display: block;
			border-radius: 16px;
}

.mpt-section {
	padding-bottom: 34px;
			margin-bottom: 34px;
			border-bottom: 1px solid var(--mpt-border);
}

.mpt-section:last-child {
	padding-bottom: 0;
			margin-bottom: 0;
			border-bottom: 0;
}

.mpt-section h2 {
	font-size: clamp(1.45rem, 3vw, 2rem);
			font-weight: 800;
			letter-spacing: -0.035em;
			color: var(--mpt-dark);
			margin-bottom: 18px;
}

.mpt-section p {
	color: var(--mpt-muted);
			line-height: 1.85;
			margin-bottom: 16px;
}

.mpt-section ul {
	color: var(--mpt-muted);
			line-height: 1.85;
			padding-left: 1.2rem;
			margin-bottom: 0;
}

.mpt-section li {
	margin-bottom: 10px;
}

.mpt-section strong {
	color: var(--mpt-dark);
}

.mpt-note-box {
	background: #fffaf2;
			border-left: 5px solid var(--mpt-accent);
			border-radius: 18px;
			padding: 20px 22px;
			margin: 24px 0;
			color: var(--mpt-muted);
			line-height: 1.75;
}

.mpt-commitment-grid {
	display: grid;
			grid-template-columns: repeat(3, 1fr);
			gap: 18px;
			margin-top: 24px;
}

.mpt-commitment-card {
	background: #fbfaf7;
			border: 1px solid var(--mpt-border);
			border-radius: 20px;
			padding: 22px;
}

.mpt-commitment-card span {
	display: inline-flex;
			align-items: center;
			justify-content: center;
			width: 38px;
			height: 38px;
			border-radius: 50%;
			background: var(--mpt-accent-soft);
			color: var(--mpt-accent);
			font-weight: 800;
			margin-bottom: 14px;
}

.mpt-commitment-card h3 {
	font-size: 1.05rem;
			font-weight: 800;
			color: var(--mpt-dark);
			margin-bottom: 8px;
}

.mpt-commitment-card p {
	font-size: .96rem;
			line-height: 1.7;
			margin-bottom: 0;
}

@media (max-width: 991px) {
	.mpt-commitment-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.mpt-esnna-page {
		padding: 50px 0;
	}
	.mpt-content-box {
		padding: 26px;
						border-radius: 22px;
	}
	.mpt-esnna-images {
		grid-template-columns: 1fr;
	}
}

/* ---------- page-inca-trail-availability.php ---------- */
.mpt-availability-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
			background: var(--mpt-bg);
			overflow: hidden;
}

/* HERO */
		.mpt-availability-hero {
	position: relative;
			padding: 120px 0 90px;
			background:
				linear-gradient(90deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 48%, rgba(31,42,36,.10) 100%),
				url('https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
			color: #fff;
			border-radius: 0 0 44px 44px;
}

.mpt-availability-hero::after {
	content: "";
			position: absolute;
			inset: auto 0 0 0;
			height: 120px;
			background: linear-gradient(to bottom, transparent, var(--mpt-bg));
			pointer-events: none;
}

.mpt-availability-hero-content {
	position: relative;
			z-index: 2;
			max-width: 820px;
}

.mpt-availability-hero .mpt-title,
		.mpt-availability-hero .mpt-subtitle {
	color: #fff;
}

.mpt-availability-hero .mpt-subtitle {
	color: rgba(255,255,255,.82);
			max-width: 700px;
}

/* CARD */
		.mpt-card {
	background: var(--mpt-card);
			border: 1px solid var(--mpt-border);
			border-radius: 28px;
			padding: 32px;
			height: 100%;
			box-shadow: 0 18px 55px rgba(0, 0, 0, 0.045);
			transition: all .3s ease;
}

/* FAQ */
		.mpt-faq .accordion-item {
	border: 1px solid var(--mpt-border);
			border-radius: 22px;
			overflow: hidden;
			margin-bottom: 14px;
			background: #fff;
			box-shadow: 0 12px 35px rgba(0,0,0,.035);
}

.mpt-faq .accordion-button {
	border: 0;
			background: #fff;
			color: var(--mpt-dark);
			font-weight: 800;
			font-size: 1rem;
			padding: 22px 24px;
			box-shadow: none;
}

.mpt-faq .accordion-button:not(.collapsed) {
	background: var(--mpt-accent-soft);
			color: #7c5526;
			box-shadow: none;
}

.mpt-faq .accordion-body {
	color: var(--mpt-muted);
			line-height: 1.75;
			padding: 0 24px 24px;
}

/* FORM */
		.mpt-form-card {
	background: #fff;
			border: 1px solid var(--mpt-border);
			border-radius: 32px;
			padding: 40px;
			box-shadow: 0 18px 55px rgba(0,0,0,.045);
}

.mpt-form-control {
	width: 100%;
			border: 1px solid var(--mpt-border);
			border-radius: 18px;
			padding: 15px 18px;
			outline: none;
			background: #fbfaf7;
			color: var(--mpt-dark);
			transition: all .2s ease;
}

.mpt-form-control:focus {
	border-color: var(--mpt-accent);
			background: #fff;
			box-shadow: 0 0 0 4px rgba(184,135,70,.12);
}

.mpt-form-label {
	font-weight: 800;
			color: var(--mpt-dark);
			margin-bottom: 8px;
}

@media (max-width: 991px) {
	.mpt-availability-hero {
		padding: 90px 0 70px;
						background:
							linear-gradient(180deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 58%, rgba(31,42,36,.24) 100%),
							url('https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat;
						border-radius: 0 0 30px 30px;
	}
}

@media (max-width: 575px) {
	.mpt-availability-hero {
		padding: 74px 0 60px;
	}
	.mpt-card,
			.mpt-feature-card,
			.mpt-process-card,
			.mpt-form-card {
		padding: 24px;
						border-radius: 24px;
	}
}

/* ---------- page-machu-picchu-circuits.php ---------- */
.mpt-circuits-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
			background: var(--mpt-bg);
			overflow: hidden;
}

/* HERO */
		.mpt-circuits-hero {
	position: relative;
			padding: 120px 0 90px;
			background:
				linear-gradient(90deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 48%, rgba(31,42,36,.10) 100%),
				url('<?php echo esc_url($upload_base . 'circuit-2-machupicchu-clasico-route-2-a-route-disenada.jpg'); ?>') center/cover no-repeat;
			color: #fff;
			border-radius: 0 0 44px 44px;
}

.mpt-circuits-hero::after {
	content: "";
			position: absolute;
			inset: auto 0 0 0;
			height: 120px;
			background: linear-gradient(to bottom, transparent, var(--mpt-bg));
			pointer-events: none;
}

.mpt-circuits-hero-content {
	position: relative;
			z-index: 2;
			max-width: 840px;
}

.mpt-circuits-hero .mpt-title,
		.mpt-circuits-hero .mpt-subtitle {
	color: #fff;
}

.mpt-circuits-hero .mpt-subtitle {
	color: rgba(255,255,255,.84);
			max-width: 720px;
}

.mpt-alert-card {
	background: #fff;
			border: 1px solid rgba(184,135,70,.22);
			border-left: 6px solid var(--mpt-accent);
			border-radius: 28px;
			padding: 34px;
			box-shadow: 0 18px 55px rgba(0,0,0,.045);
}

.mpt-alert-card h2 {
	font-weight: 800;
			color: var(--mpt-dark);
			letter-spacing: -0.03em;
}

/* TABLE */
		.mpt-table-wrap {
	background: #fff;
			border: 1px solid var(--mpt-border);
			border-radius: 30px;
			padding: 16px;
			box-shadow: 0 18px 55px rgba(0,0,0,.045);
			overflow: hidden;
}

.mpt-table {
	margin-bottom: 0;
			vertical-align: top;
}

.mpt-table th {
	background: var(--mpt-dark);
			color: #fff;
			border-color: rgba(255,255,255,.12);
			padding: 22px;
			font-size: 1rem;
}

.mpt-table td {
	padding: 22px;
			color: var(--mpt-muted);
			line-height: 1.7;
			border-color: var(--mpt-border);
}

.mpt-table strong {
	color: var(--mpt-dark);
}

.mpt-table ul {
	margin-bottom: 0;
			padding-left: 1.1rem;
}

/* ROUTE CARDS */
		.mpt-route-card {
	background: #fff;
			border: 1px solid var(--mpt-border);
			border-radius: 30px;
			overflow: hidden;
			height: 100%;
			box-shadow: 0 18px 55px rgba(0,0,0,.045);
			transition: all .3s ease;
}

.mpt-route-card:hover {
	transform: translateY(-6px);
			box-shadow: 0 24px 70px rgba(0,0,0,.08);
}

.mpt-route-img {
	position: relative;
			display: block;
			height: 260px;
			overflow: hidden;
			background: var(--mpt-accent-soft);
}

.mpt-route-img img {
	transition: transform .55s ease;
}

.mpt-route-card:hover .mpt-route-img img {
	transform: scale(1.06);
}

.mpt-route-tag {
	position: absolute;
			left: 18px;
			top: 18px;
			z-index: 2;
			padding: 8px 13px;
			border-radius: 999px;
			background: rgba(255,255,255,.92);
			color: var(--mpt-dark);
			font-size: .82rem;
			font-weight: 800;
			backdrop-filter: blur(10px);
}

.mpt-route-body {
	padding: 28px;
}

.mpt-route-body h3 {
	font-size: 1.35rem;
			font-weight: 800;
			color: var(--mpt-dark);
			letter-spacing: -0.03em;
			margin-bottom: 10px;
}

.mpt-route-body p {
	color: var(--mpt-muted);
			line-height: 1.75;
			margin-bottom: 20px;
}

.mpt-route-meta {
	display: flex;
			flex-wrap: wrap;
			gap: 8px;
}

.mpt-route-meta span {
	display: inline-flex;
			padding: 8px 12px;
			border-radius: 999px;
			background: #f4efe7;
			color: #7c5526;
			font-size: .84rem;
			font-weight: 700;
}

/* DETAIL BLOCKS */
		.mpt-detail-card {
	background: #fff;
			border: 1px solid var(--mpt-border);
			border-radius: 32px;
			overflow: hidden;
			box-shadow: 0 18px 55px rgba(0,0,0,.045);
}

.mpt-detail-image {
	min-height: 100%;
			height: 100%;
			background: var(--mpt-accent-soft);
}

.mpt-detail-content {
	padding: 42px;
}

.mpt-detail-content h3 {
	color: var(--mpt-dark);
			font-weight: 800;
			letter-spacing: -0.04em;
			font-size: clamp(1.8rem, 3vw, 2.6rem);
}

.mpt-detail-list {
	display: grid;
			gap: 12px;
			margin-top: 22px;
}

.mpt-detail-list span {
	display: flex;
			gap: 10px;
			align-items: flex-start;
			color: var(--mpt-muted);
			line-height: 1.6;
}

.mpt-detail-list span::before {
	content: "✓";
			width: 24px;
			height: 24px;
			flex: 0 0 24px;
			border-radius: 50%;
			background: var(--mpt-accent-soft);
			color: var(--mpt-accent);
			display: inline-flex;
			align-items: center;
			justify-content: center;
			font-weight: 900;
			font-size: .78rem;
			margin-top: 1px;
}

@media (max-width: 991px) {
	.mpt-circuits-hero {
		padding: 90px 0 70px;
						background:
							linear-gradient(180deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 58%, rgba(31,42,36,.24) 100%),
							url('<?php echo esc_url($upload_base . 'circuit-2-machupicchu-clasico-route-2-a-route-disenada.jpg'); ?>') center/cover no-repeat;
						border-radius: 0 0 30px 30px;
	}
	.mpt-detail-image {
		min-height: 340px;
	}
}

@media (max-width: 575px) {
	.mpt-circuits-hero {
		padding: 74px 0 60px;
	}
	.mpt-card,
			.mpt-alert-card,
			.mpt-detail-content {
		padding: 24px;
						border-radius: 24px;
	}
	.mpt-route-img {
		height: 230px;
	}
	.mpt-route-body {
		padding: 24px;
	}
	.mpt-table th,
			.mpt-table td {
		padding: 18px;
	}
}

/* ---------- page-premium-tours.php ---------- */
.mpt-premium-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
			background: var(--mpt-bg);
			overflow: hidden;
}

.mpt-card {
	background: var(--mpt-card);
			border: 1px solid var(--mpt-border);
			border-radius: 28px;
			padding: 32px;
			height: 100%;
			box-shadow: 0 18px 55px rgba(0, 0, 0, 0.045);
			transition: all .3s ease;
}

.mpt-premium-hero {
	position: relative;
			padding: 120px 0 90px;
			background:
				linear-gradient(90deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 48%, rgba(31,42,36,.10) 100%),
				url('https://images.unsplash.com/photo-1587595431973-160d0d94add1?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
			color: #fff;
			border-radius: 0 0 44px 44px;
}

.mpt-premium-hero::after {
	content: "";
			position: absolute;
			inset: auto 0 0 0;
			height: 120px;
			background: linear-gradient(to bottom, transparent, var(--mpt-bg));
			pointer-events: none;
}

.mpt-premium-hero-content {
	position: relative;
			z-index: 2;
			max-width: 790px;
}

.mpt-premium-hero .mpt-title,
		.mpt-premium-hero .mpt-subtitle {
	color: #fff;
}

.mpt-premium-hero .mpt-subtitle {
	color: rgba(255,255,255,.82);
			max-width: 680px;
}

.mpt-image-stack {
	position: relative;
			min-height: 560px;
}

.mpt-premium-card {
	position: relative;
			padding: 32px;
			border-radius: 28px;
			background: #fff;
			border: 1px solid var(--mpt-border);
			height: 100%;
			box-shadow: 0 18px 55px rgba(0,0,0,.04);
			transition: all .3s ease;
			overflow: hidden;
}

.mpt-premium-card::before {
	content: "";
			position: absolute;
			right: -45px;
			top: -45px;
			width: 120px;
			height: 120px;
			border-radius: 50%;
			background: var(--mpt-accent-soft);
			opacity: .65;
}

.mpt-premium-card:hover {
	transform: translateY(-6px);
			box-shadow: 0 24px 70px rgba(0,0,0,.08);
}

.mpt-premium-card h3,
		.mpt-premium-card p,
		.mpt-premium-card .mpt-icon {
	position: relative;
}

.mpt-premium-card h3 {
	font-size: 1.25rem;
			font-weight: 800;
			color: var(--mpt-dark);
			margin-bottom: 14px;
}

.mpt-premium-card p {
	color: var(--mpt-muted);
			line-height: 1.75;
			margin-bottom: 0;
}

.mpt-dark-panel {
	position: relative;
			background: var(--mpt-dark);
			color: #fff;
			border-radius: 40px;
			padding: 80px 56px;
			overflow: hidden;
}

.mpt-photo-card {
	position: relative;
			min-height: 460px;
			overflow: hidden;
			border-radius: 34px;
			background: var(--mpt-dark);
}

@media (max-width: 991px) {
	.mpt-premium-hero {
		padding: 90px 0 70px;
						background:
							linear-gradient(180deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 58%, rgba(31,42,36,.24) 100%),
							url('https://images.unsplash.com/photo-1587595431973-160d0d94add1?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat;
						border-radius: 0 0 30px 30px;
	}
}

@media (max-width: 575px) {
	.mpt-premium-hero {
		padding: 74px 0 60px;
	}
	.mpt-card,
			.mpt-premium-card {
		padding: 24px;
						border-radius: 24px;
	}
}

/* ---------- page-privacy-policy.php ---------- */
.mpt-privacy-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
			background: var(--mpt-bg);
			overflow: hidden;
}

.mpt-heading {
	font-size: clamp(2rem, 4vw, 3.4rem);
			line-height: 1.05;
			letter-spacing: -0.05em;
			font-weight: 800;
			color: var(--mpt-dark);
}

/* HERO */
		.mpt-privacy-hero {
	position: relative;
			padding: 120px 0 90px;
			background:
				linear-gradient(90deg, rgba(31,42,36,.94) 0%, rgba(31,42,36,.72) 48%, rgba(31,42,36,.16) 100%),
				url('https://images.unsplash.com/photo-1587595431973-160d0d94add1?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
			color: #fff;
			border-radius: 0 0 44px 44px;
}

.mpt-privacy-hero::after {
	content: "";
			position: absolute;
			inset: auto 0 0 0;
			height: 120px;
			background: linear-gradient(to bottom, transparent, var(--mpt-bg));
			pointer-events: none;
}

.mpt-privacy-hero-content {
	position: relative;
			z-index: 2;
			max-width: 840px;
}

.mpt-privacy-hero .mpt-title,
		.mpt-privacy-hero .mpt-subtitle {
	color: #fff;
}

.mpt-privacy-hero .mpt-subtitle {
	color: rgba(255,255,255,.84);
			max-width: 720px;
}

/* LAYOUT */
		.mpt-policy-shell {
	display: grid;
			grid-template-columns: 320px 1fr;
			gap: 34px;
			align-items: start;
}

.mpt-sidebar {
	position: sticky;
			top: 110px;
			background: #fff;
			border: 1px solid var(--mpt-border);
			border-radius: 28px;
			padding: 26px;
			box-shadow: 0 18px 55px rgba(0,0,0,.045);
}

.mpt-sidebar h3 {
	font-size: 1.1rem;
			font-weight: 800;
			color: var(--mpt-dark);
			margin-bottom: 18px;
}

.mpt-sidebar-nav {
	display: grid;
			gap: 8px;
}

.mpt-sidebar-nav a {
	display: block;
			padding: 12px 14px;
			border-radius: 16px;
			color: var(--mpt-muted);
			text-decoration: none;
			font-weight: 700;
			font-size: .94rem;
			transition: all .2s ease;
}

.mpt-sidebar-nav a:hover {
	background: var(--mpt-accent-soft);
			color: #7c5526;
}

.mpt-contact-mini {
	margin-top: 24px;
			padding-top: 24px;
			border-top: 1px solid var(--mpt-border);
}

.mpt-contact-mini span {
	display: block;
			color: var(--mpt-muted);
			font-size: .9rem;
			margin-bottom: 6px;
}

.mpt-contact-mini a,
		.mpt-contact-mini strong {
	color: var(--mpt-dark);
			font-weight: 800;
			text-decoration: none;
			word-break: break-word;
}

.mpt-policy-content {
	display: grid;
			gap: 28px;
}

.mpt-policy-card {
	background: #fff;
			border: 1px solid var(--mpt-border);
			border-radius: 30px;
			padding: 40px;
			box-shadow: 0 18px 55px rgba(0,0,0,.045);
}

.mpt-policy-card h2 {
	font-size: clamp(1.55rem, 3vw, 2.35rem);
			font-weight: 800;
			letter-spacing: -0.04em;
			color: var(--mpt-dark);
			margin-bottom: 18px;
}

.mpt-policy-card h3 {
	font-size: 1.18rem;
			font-weight: 800;
			color: var(--mpt-dark);
			margin-top: 28px;
			margin-bottom: 12px;
}

.mpt-policy-card p {
	color: var(--mpt-muted);
			line-height: 1.85;
			margin-bottom: 16px;
}

.mpt-policy-card ul {
	color: var(--mpt-muted);
			line-height: 1.8;
			padding-left: 1.2rem;
			margin-bottom: 0;
}

.mpt-policy-card li {
	margin-bottom: 10px;
}

.mpt-policy-card strong {
	color: var(--mpt-dark);
}

.mpt-highlight-card {
	background: var(--mpt-dark);
			color: #fff;
			border-radius: 30px;
			padding: 38px;
			position: relative;
			overflow: hidden;
}

.mpt-highlight-card::before {
	content: "";
			position: absolute;
			width: 280px;
			height: 280px;
			border-radius: 50%;
			background: rgba(184,135,70,.22);
			right: -110px;
			top: -120px;
}

.mpt-highlight-card > * {
	position: relative;
			z-index: 2;
}

.mpt-highlight-card h2 {
	color: #fff;
			font-weight: 800;
			letter-spacing: -0.04em;
			margin-bottom: 14px;
}

.mpt-highlight-card p,
		.mpt-highlight-card li {
	color: rgba(255,255,255,.75);
}

.mpt-grid-2 {
	display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: 18px;
			margin-top: 20px;
}

.mpt-mini-card {
	padding: 22px;
			border-radius: 22px;
			background: #fbfaf7;
			border: 1px solid var(--mpt-border);
			height: 100%;
}

.mpt-mini-card strong {
	display: block;
			font-size: 1rem;
			color: var(--mpt-dark);
			margin-bottom: 8px;
}

.mpt-mini-card span {
	color: var(--mpt-muted);
			line-height: 1.65;
			font-size: .95rem;
}

.mpt-dark-mini-card {
	padding: 22px;
			border-radius: 22px;
			background: rgba(255,255,255,.08);
			border: 1px solid rgba(255,255,255,.12);
			height: 100%;
}

.mpt-dark-mini-card strong {
	display: block;
			font-size: 1rem;
			color: #fff;
			margin-bottom: 8px;
}

.mpt-dark-mini-card span {
	color: rgba(255,255,255,.72);
			line-height: 1.65;
			font-size: .95rem;
}

.mpt-rights-list {
	display: grid;
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: 14px;
			margin-top: 22px;
}

.mpt-right-item {
	padding: 18px;
			border-radius: 20px;
			background: #fbfaf7;
			border: 1px solid var(--mpt-border);
			color: var(--mpt-muted);
			line-height: 1.65;
}

.mpt-right-item strong {
	display: block;
			color: var(--mpt-dark);
			margin-bottom: 6px;
}

.mpt-note {
	border-left: 5px solid var(--mpt-accent);
			background: #fffaf2;
			border-radius: 20px;
			padding: 22px;
			color: var(--mpt-muted);
			line-height: 1.75;
}

.mpt-table-wrap {
	border: 1px solid var(--mpt-border);
			border-radius: 24px;
			overflow: hidden;
			margin-top: 20px;
}

.mpt-table {
	margin-bottom: 0;
}

.mpt-table th {
	background: var(--mpt-dark);
			color: #fff;
			padding: 18px;
			border-color: rgba(255,255,255,.12);
}

.mpt-table td {
	padding: 18px;
			color: var(--mpt-muted);
			border-color: var(--mpt-border);
			line-height: 1.65;
}

.mpt-final-cta {
	background: #fff;
			border: 1px solid var(--mpt-border);
			border-radius: 30px;
			padding: 46px;
			text-align: center;
			box-shadow: 0 18px 55px rgba(0,0,0,.045);
}

@media (max-width: 991px) {
	.mpt-privacy-hero {
		padding: 90px 0 70px;
						background:
							linear-gradient(180deg, rgba(31,42,36,.94) 0%, rgba(31,42,36,.72) 58%, rgba(31,42,36,.24) 100%),
							url('https://images.unsplash.com/photo-1587595431973-160d0d94add1?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat;
						border-radius: 0 0 30px 30px;
	}
	.mpt-policy-shell {
		grid-template-columns: 1fr;
	}
	.mpt-sidebar {
		position: relative;
						top: auto;
	}
}

@media (max-width: 575px) {
	.mpt-privacy-hero {
		padding: 74px 0 60px;
	}
	.mpt-policy-card,
			.mpt-highlight-card,
			.mpt-final-cta {
		padding: 24px;
						border-radius: 24px;
	}
	.mpt-grid-2,
			.mpt-rights-list {
		grid-template-columns: 1fr;
	}
}

/* ---------- page-tailor-made-trips.php ---------- */
.mpt-tailor-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
			background: var(--mpt-bg);
			overflow: hidden;
}

/* HERO */
		.mpt-tailor-hero {
	position: relative;
			padding: 120px 0 90px;
			background:
				linear-gradient(90deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 48%, rgba(31,42,36,.10) 100%),
				url('https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
			color: #fff;
			border-radius: 0 0 44px 44px;
}

.mpt-tailor-hero::after {
	content: "";
			position: absolute;
			inset: auto 0 0 0;
			height: 120px;
			background: linear-gradient(to bottom, transparent, var(--mpt-bg));
			pointer-events: none;
}

.mpt-tailor-hero-content {
	position: relative;
			z-index: 2;
			max-width: 820px;
}

.mpt-tailor-hero .mpt-title,
		.mpt-tailor-hero .mpt-subtitle {
	color: #fff;
}

.mpt-tailor-hero .mpt-subtitle {
	color: rgba(255,255,255,.82);
			max-width: 680px;
}

/* PHOTO CARDS */
		.mpt-photo-card {
	position: relative;
			min-height: 440px;
			overflow: hidden;
			border-radius: 34px;
			background: var(--mpt-dark);
}

@media (max-width: 991px) {
	.mpt-tailor-hero {
		padding: 90px 0 70px;
						background:
							linear-gradient(180deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 58%, rgba(31,42,36,.24) 100%),
							url('https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat;
						border-radius: 0 0 30px 30px;
	}
}

@media (max-width: 575px) {
	.mpt-tailor-hero {
		padding: 74px 0 60px;
	}
	.mpt-card,
			.mpt-feature-card,
			.mpt-process-card {
		padding: 24px;
						border-radius: 24px;
	}
}

/* ---------- page-team.php ---------- */
.mpt-team-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
		overflow: hidden;
		background: var(--mpt-bg);
}

/* HERO */
	.mpt-team-hero {
	position: relative;
		padding: 120px 0 90px;
		background:
			linear-gradient(90deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 48%, rgba(31,42,36,.10) 100%),
			url('https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
		color: #fff;
		border-radius: 0 0 44px 44px;
}

.mpt-team-hero::after {
	content: "";
		position: absolute;
		inset: auto 0 0 0;
		height: 120px;
		background: linear-gradient(to bottom, transparent, var(--mpt-bg));
		pointer-events: none;
}

.mpt-team-hero-content {
	position: relative;
		z-index: 2;
		max-width: 790px;
}

.mpt-team-hero .mpt-title,
	.mpt-team-hero .mpt-subtitle {
	color: #fff;
}

.mpt-team-hero .mpt-subtitle {
	color: rgba(255,255,255,.82);
		max-width: 680px;
}

/* IMAGE STACK */
	.mpt-image-stack {
	position: relative;
		min-height: 560px;
}

/* GUIDE FEATURE */
	.mpt-guide-feature {
	position: relative;
		border-radius: 36px;
		overflow: hidden;
		min-height: 580px;
		background: var(--mpt-dark);
		color: #fff;
}

.mpt-guide-feature img {
	position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		opacity: .48;
}

.mpt-guide-feature::after {
	content: "";
		position: absolute;
		inset: 0;
		background: linear-gradient(90deg, rgba(31,42,36,.88), rgba(31,42,36,.42));
}

.mpt-guide-content {
	position: relative;
		z-index: 2;
		padding: 56px;
		max-width: 670px;
}

.mpt-guide-name {
	display: inline-flex;
		flex-direction: column;
		gap: 3px;
		padding: 18px 22px;
		border-radius: 22px;
		background: rgba(255,255,255,.12);
		border: 1px solid rgba(255,255,255,.18);
		backdrop-filter: blur(14px);
		margin-top: 25px;
}

.mpt-guide-name strong {
	font-size: 1.15rem;
}

.mpt-guide-name span {
	color: rgba(255,255,255,.72);
		font-size: .92rem;
}

/* ICON CARDS */
	.mpt-icon {
	width: 58px;
		height: 58px;
		border-radius: 20px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		background: var(--mpt-accent-soft);
		color: var(--mpt-accent);
		font-size: 1.15rem;
		font-weight: 800;
		margin-bottom: 22px;
}

.mpt-team-member {
	border-radius: 28px;
		overflow: hidden;
		background: #fff;
		border: 1px solid var(--mpt-border);
		box-shadow: 0 18px 55px rgba(0,0,0,.045);
		height: 100%;
		transition: all .3s ease;
}

.mpt-team-member:hover {
	transform: translateY(-6px);
		box-shadow: 0 24px 70px rgba(0,0,0,.08);
}

.mpt-team-member-img {
	height: 280px;
		overflow: hidden;
		background: var(--mpt-accent-soft);
}

.mpt-team-member-body {
	padding: 26px;
}

.mpt-team-member-body h3 {
	font-size: 1.2rem;
		font-weight: 800;
		color: var(--mpt-dark);
		margin-bottom: 6px;
}

.mpt-team-member-body span {
	display: block;
		color: var(--mpt-accent);
		font-weight: 700;
		margin-bottom: 12px;
}

.mpt-team-member-body p {
	color: var(--mpt-muted);
		line-height: 1.7;
		margin-bottom: 0;
}

/* PORTERS */
	.mpt-photo-card {
	position: relative;
		min-height: 420px;
		overflow: hidden;
		border-radius: 34px;
		background: var(--mpt-dark);
}

.mpt-photo-card::after {
	content: "";
		position: absolute;
		inset: 0;
		background: linear-gradient(to top, rgba(0,0,0,.72), rgba(0,0,0,.08));
}

.mpt-photo-card-content {
	position: absolute;
		z-index: 2;
		left: 32px;
		right: 32px;
		bottom: 32px;
		color: #fff;
}

.mpt-photo-card-content p {
	color: rgba(255,255,255,.82);
		margin-bottom: 0;
		line-height: 1.7;
}

@media (max-width: 991px) {
	.mpt-team-hero {
		padding: 90px 0 70px;
					background:
						linear-gradient(180deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 58%, rgba(31,42,36,.24) 100%),
						url('https://images.unsplash.com/photo-1526392060635-9d6019884377?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat;
					border-radius: 0 0 30px 30px;
	}
	.mpt-guide-content {
		padding: 38px;
	}
}

@media (max-width: 575px) {
	.mpt-team-hero {
		padding: 74px 0 60px;
	}
	.mpt-guide-feature {
		min-height: 620px;
					border-radius: 28px;
	}
	.mpt-guide-content {
		padding: 30px;
	}
	.mpt-team-member-img {
		height: 240px;
	}
	.mpt-photo-card-content {
		left: 24px;
					right: 24px;
					bottom: 24px;
	}
}

/* ---------- page-terms-and-conditions.php ---------- */
.mpt-terms-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
			background: var(--mpt-bg);
			padding: 70px 0;
}

.mpt-terms-header {
	max-width: 900px;
			margin: 0 auto 34px;
			text-align: center;
}

.mpt-terms-box {
	max-width: 1050px;
			margin: 0 auto;
			background: var(--mpt-card);
			border: 1px solid var(--mpt-border);
			border-radius: 28px;
			padding: 44px;
			box-shadow: 0 18px 55px rgba(0, 0, 0, 0.045);
}

.mpt-terms-section {
	padding-bottom: 34px;
			margin-bottom: 34px;
			border-bottom: 1px solid var(--mpt-border);
}

.mpt-terms-section:last-child {
	padding-bottom: 0;
			margin-bottom: 0;
			border-bottom: 0;
}

.mpt-terms-section h2 {
	font-size: clamp(1.45rem, 3vw, 2rem);
			font-weight: 800;
			letter-spacing: -0.035em;
			color: var(--mpt-dark);
			margin-bottom: 18px;
}

.mpt-terms-section p {
	color: var(--mpt-muted);
			line-height: 1.85;
			margin-bottom: 16px;
}

.mpt-terms-section ul {
	color: var(--mpt-muted);
			line-height: 1.85;
			padding-left: 1.2rem;
			margin-bottom: 0;
}

.mpt-terms-section li {
	margin-bottom: 10px;
}

.mpt-terms-section strong {
	color: var(--mpt-dark);
}

.mpt-note-box {
	background: #fffaf2;
			border-left: 5px solid var(--mpt-accent);
			border-radius: 18px;
			padding: 20px 22px;
			margin: 22px 0;
			color: var(--mpt-muted);
			line-height: 1.75;
}

.mpt-simple-table {
	width: 100%;
			border-collapse: separate;
			border-spacing: 0;
			overflow: hidden;
			border: 1px solid var(--mpt-border);
			border-radius: 18px;
			margin-top: 20px;
}

.mpt-simple-table th {
	background: var(--mpt-dark);
			color: #fff;
			padding: 16px;
			text-align: left;
}

.mpt-simple-table td {
	padding: 16px;
			color: var(--mpt-muted);
			border-top: 1px solid var(--mpt-border);
}

@media (max-width: 767px) {
	.mpt-terms-page {
		padding: 50px 0;
	}
	.mpt-terms-box {
		padding: 26px;
						border-radius: 22px;
	}
	.mpt-simple-table th,
			.mpt-simple-table td {
		padding: 14px;
	}
}

/* ---------- page-travel-guide.php ---------- */
.mpt-blog-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
			background: var(--mpt-bg);
			overflow: hidden;
}

/* HERO */
		.mpt-blog-hero {
	position: relative;
			padding: 120px 0 90px;
			background:
				linear-gradient(90deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 48%, rgba(31,42,36,.10) 100%),
				url('https://images.unsplash.com/photo-1587595431973-160d0d94add1?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
			color: #fff;
			border-radius: 0 0 44px 44px;
}

.mpt-blog-hero::after {
	content: "";
			position: absolute;
			inset: auto 0 0 0;
			height: 120px;
			background: linear-gradient(to bottom, transparent, var(--mpt-bg));
			pointer-events: none;
}

.mpt-blog-hero-content {
	position: relative;
			z-index: 2;
			max-width: 780px;
}

.mpt-blog-hero .mpt-title,
		.mpt-blog-hero .mpt-subtitle {
	color: #fff;
}

.mpt-blog-hero .mpt-subtitle {
	color: rgba(255,255,255,.82);
			max-width: 660px;
}

/* BLOG CARD */
		.mpt-post-card {
	background: var(--mpt-card);
			border: 1px solid var(--mpt-border);
			border-radius: 30px;
			overflow: hidden;
			height: 100%;
			box-shadow: 0 18px 55px rgba(0, 0, 0, 0.045);
			transition: all .3s ease;
}

.mpt-post-card:hover {
	transform: translateY(-6px);
			box-shadow: 0 24px 70px rgba(0, 0, 0, 0.08);
}

.mpt-post-img {
	position: relative;
			display: block;
			height: 270px;
			overflow: hidden;
			background: var(--mpt-accent-soft);
}

.mpt-post-img img {
	width: 100%;
			height: 100%;
			object-fit: cover;
			display: block;
			transition: transform .5s ease;
}

.mpt-post-card:hover .mpt-post-img img {
	transform: scale(1.06);
}

.mpt-post-category {
	position: absolute;
			left: 18px;
			bottom: 18px;
			z-index: 2;
			display: inline-flex;
			padding: 8px 14px;
			border-radius: 999px;
			background: rgba(255,255,255,.9);
			color: var(--mpt-dark);
			font-size: .82rem;
			font-weight: 800;
			backdrop-filter: blur(10px);
			text-decoration: none;
}

.mpt-post-body {
	padding: 28px;
}

.mpt-post-meta {
	display: flex;
			flex-wrap: wrap;
			gap: 10px;
			color: var(--mpt-muted);
			font-size: .9rem;
			margin-bottom: 14px;
}

.mpt-post-title {
	font-size: 1.45rem;
			line-height: 1.2;
			font-weight: 800;
			letter-spacing: -0.03em;
			margin-bottom: 14px;
}

.mpt-post-title a {
	color: var(--mpt-dark);
			text-decoration: none;
}

.mpt-post-title a:hover {
	color: var(--mpt-accent);
}

.mpt-post-excerpt {
	color: var(--mpt-muted);
			line-height: 1.75;
			margin-bottom: 22px;
}

.mpt-read-more {
	display: inline-flex;
			align-items: center;
			gap: 8px;
			color: var(--mpt-accent);
			font-weight: 800;
			text-decoration: none;
}

.mpt-read-more:hover {
	color: #9d703b;
}

/* PAGINATION */
		.mpt-pagination {
	margin-top: 60px;
			display: flex;
			justify-content: center;
}

.mpt-pagination .page-numbers {
	display: inline-flex;
			align-items: center;
			justify-content: center;
			min-width: 46px;
			height: 46px;
			margin: 0 5px;
			padding: 0 14px;
			border-radius: 999px;
			background: #fff;
			border: 1px solid var(--mpt-border);
			color: var(--mpt-dark);
			font-weight: 800;
			text-decoration: none;
			box-shadow: 0 10px 28px rgba(0,0,0,.04);
			transition: all .25s ease;
}

.mpt-pagination .page-numbers:hover {
	background: var(--mpt-accent-soft);
			color: var(--mpt-dark);
			transform: translateY(-2px);
}

.mpt-pagination .page-numbers.current {
	background: var(--mpt-accent);
			color: #fff;
			border-color: var(--mpt-accent);
}

.mpt-pagination .page-numbers.dots {
	background: transparent;
			border: 0;
			box-shadow: none;
			color: var(--mpt-muted);
}

.mpt-empty-card {
	background: #fff;
			border: 1px solid var(--mpt-border);
			border-radius: 30px;
			padding: 50px;
			text-align: center;
			box-shadow: 0 18px 55px rgba(0,0,0,.045);
}

@media (max-width: 991px) {
	.mpt-blog-hero {
		padding: 90px 0 70px;
						background:
							linear-gradient(180deg, rgba(31,42,36,.92) 0%, rgba(31,42,36,.68) 58%, rgba(31,42,36,.24) 100%),
							url('https://images.unsplash.com/photo-1587595431973-160d0d94add1?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat;
						border-radius: 0 0 30px 30px;
	}
}

@media (max-width: 575px) {
	.mpt-blog-hero {
		padding: 74px 0 60px;
	}
	.mpt-post-img {
		height: 230px;
	}
	.mpt-post-body {
		padding: 24px;
	}
	.mpt-pagination {
		flex-wrap: wrap;
						gap: 8px;
	}
	.mpt-pagination .page-numbers {
		margin: 0;
	}
}

/* ---------- page-why.php ---------- */
.mpt-why-page {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
		overflow: hidden;
		background: var(--mpt-bg);
}

.mpt-title {
	font-size: clamp(2.2rem, 5vw, 4.6rem);
		line-height: 1;
		letter-spacing: -0.06em;
		font-weight: 800;
		color: var(--mpt-dark);
}

.mpt-why-hero {
	position: relative;
		padding: 120px 0 90px;
		background:
			linear-gradient(90deg, rgba(31,42,36,.9) 0%, rgba(31,42,36,.68) 48%, rgba(31,42,36,.12) 100%),
			url('https://images.unsplash.com/photo-1587595431973-160d0d94add1?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
		color: #fff;
		border-radius: 0 0 44px 44px;
}

.mpt-why-hero::after {
	content: "";
		position: absolute;
		inset: auto 0 0 0;
		height: 120px;
		background: linear-gradient(to bottom, transparent, var(--mpt-bg));
		pointer-events: none;
}

.mpt-why-hero-content {
	position: relative;
		z-index: 2;
		max-width: 760px;
}

.mpt-why-hero .mpt-title,
	.mpt-why-hero .mpt-subtitle {
	color: #fff;
}

.mpt-why-hero .mpt-subtitle {
	color: rgba(255,255,255,.82);
		max-width: 650px;
}

.mpt-hero-badge-row {
	display: flex;
		flex-wrap: wrap;
		gap: 10px;
		margin-top: 28px;
}

.mpt-split-image {
	min-height: 520px;
		border-radius: 34px;
		overflow: hidden;
		box-shadow: 0 30px 70px rgba(0,0,0,.12);
}

.mpt-icon {
	width: 58px;
		height: 58px;
		border-radius: 20px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		background: var(--mpt-accent-soft);
		color: var(--mpt-accent);
		font-size: 1.15rem;
		font-weight: 800;
		margin-bottom: 22px;
}

.mpt-reason-card {
	position: relative;
		padding: 32px;
		border-radius: 28px;
		background: #fff;
		border: 1px solid var(--mpt-border);
		height: 100%;
		box-shadow: 0 18px 55px rgba(0, 0, 0, 0.04);
		transition: all .3s ease;
		overflow: hidden;
}

.mpt-reason-card::before {
	content: "";
		position: absolute;
		right: -45px;
		top: -45px;
		width: 120px;
		height: 120px;
		border-radius: 50%;
		background: var(--mpt-accent-soft);
		opacity: .65;
}

.mpt-reason-card:hover {
	transform: translateY(-6px);
		box-shadow: 0 24px 70px rgba(0,0,0,.08);
}

.mpt-reason-card h3 {
	position: relative;
		font-size: 1.25rem;
		font-weight: 800;
		color: var(--mpt-dark);
		margin-bottom: 14px;
}

.mpt-reason-card p {
	position: relative;
		color: var(--mpt-muted);
		line-height: 1.75;
		margin-bottom: 0;
}

.mpt-dark-panel {
	position: relative;
		background: var(--mpt-dark);
		color: #fff;
		border-radius: 40px;
		padding: 80px 56px;
		overflow: hidden;
}

@media (max-width: 991px) {
	.mpt-why-hero {
		padding: 90px 0 70px;
					background:
						linear-gradient(180deg, rgba(31,42,36,.9) 0%, rgba(31,42,36,.65) 58%, rgba(31,42,36,.25) 100%),
						url('https://images.unsplash.com/photo-1587595431973-160d0d94add1?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat;
					border-radius: 0 0 30px 30px;
	}
	.mpt-split-image {
		min-height: 380px;
	}
}

@media (max-width: 575px) {
	.mpt-card,
		.mpt-reason-card {
		padding: 24px;
					border-radius: 24px;
	}
	.mpt-why-hero {
		padding: 74px 0 60px;
	}
}


/* ---------- CONTACT US SPECIFIC UTILITIES ---------- */
.mpt-text-brand { color: #026b39 !important; }
.letter-spacing-1 { letter-spacing: 0.05em; font-size: 0.75rem; }

/* ==========================================================================
   PAGE FORMAT V2 - ESTILOS PERSONALIZADOS
   ========================================================================== */

/* === Page Format V2 - Hero con video de fondo y textos centrados === */
.mpt-hero-v2 {
	min-height: 80vh;
	background: #001f0d;
	position: relative;
}

.mpt-hero-v2-video {
	object-fit: cover;
	z-index: 1;
	filter: brightness(0.8);
}

.mpt-hero-v2-overlay {
	background: linear-gradient(180deg, rgba(0, 31, 13, 0.5) 0%, rgba(0, 20, 8, 0.72) 100%);
	z-index: 2;
}

.mpt-hero-v2 .homepage_title {
	position: relative;
	z-index: 3;
	color: #ffffff;
	max-width: 860px;
	margin: 0 auto;
}

.mpt-hero-v2 .toptitle {
	font-size: clamp(0.74rem, 0.9vw, 0.84rem);
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #ffd715;
	font-weight: 650;
}

.mpt-hero-v2 .homepage-h1 {
	font-size: clamp(1.85rem, 3.2vw, 2.75rem);
	font-weight: 750;
	line-height: 1.25;
	color: #ffffff;
	text-shadow: 0 3px 14px rgba(0, 0, 0, 0.45);
	letter-spacing: -0.01em;
}

.mpt-hero-v2 .subtitle {
	font-size: clamp(0.92rem, 1.1vw, 1.05rem);
	font-weight: 350;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.88);
	max-width: 720px;
}

/* === Page Format V2 - Botones de Marca === */
.btn-principal {
	background-color: #ffd715 !important;
	border-color: #ffd715 !important;
	color: #026b39 !important;
	font-weight: 700;
	letter-spacing: 0.04em;
	border-radius: 6px;
	padding: 12px 28px;
	transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, transform 0.2s ease;
}

.btn-principal:hover {
	background-color: #026b39 !important;
	border-color: #026b39 !important;
	color: #ffffff !important;
	transform: translateY(-2px);
}

.btn-secundario {
	background-color: #026b39 !important;
	border-color: #026b39 !important;
	color: #ffffff !important;
	font-weight: 700;
	letter-spacing: 0.04em;
	border-radius: 6px;
	padding: 12px 28px;
	transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, transform 0.2s ease;
}

.btn-secundario:hover {
	background-color: #ffd715 !important;
	border-color: #ffd715 !important;
	color: #026b39 !important;
	transform: translateY(-2px);
}

/* === Page Format V2 - Bloque de Canales de Contacto (Lineal y Minimalista - Reglas CODEX) === */
.mpt-section-contact-channels {
	background-color: #ffffff;
}

.mpt-contact-linear-bar {
	border: 1px solid #e5e5e5;
	border-radius: 6px;
	overflow: hidden;
}

@media (min-width: 992px) {
	.mpt-contact-linear-bar .border-end-lg {
		border-right: 1px solid #e5e5e5 !important;
	}
}

@media (max-width: 991.98px) {
	.mpt-contact-linear-bar .mpt-contact-col:not(:last-child) {
		border-bottom: 1px solid #e5e5e5;
	}
}

.mpt-contact-icon {
	width: 44px;
	height: 44px;
	min-width: 44px;
	border-radius: 6px;
	border: 1px solid #e5e5e5;
	background-color: #f7f7f5;
	color: #026b39;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1.25rem;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.mpt-contact-icon:hover {
	background-color: #026b39;
	border-color: #026b39;
	color: #ffd715;
}

.mpt-contact-label {
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #737373;
	margin-bottom: 0.25rem;
}

.mpt-contact-phone {
	font-size: 1.0625rem;
	font-weight: 700;
	color: #026b39;
	line-height: 1.4;
	transition: color 0.2s ease;
}

.mpt-contact-phone:hover {
	color: #171717;
	text-decoration: underline;
}

.mpt-contact-sep {
	color: #737373;
	margin: 0 0.35rem;
	font-weight: 400;
}

.mpt-contact-text {
	font-size: 0.875rem;
	line-height: 1.55;
	color: #737373;
}

.mpt-contact-badge {
	font-size: 0.6875rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	padding: 0.125rem 0.5rem;
	border-radius: 4px;
	border: 1px solid #e5e5e5;
	background-color: #ffffff;
	color: #026b39;
}

.bg-alt-subtle {
	background-color: #f7f7f5;
}

/* === Page Format V2 - Banner Promocional Ancho a Ancho con Parallax === */
/* Sección de ancho completo con overflow oculto para albergar el fondo extendido */
.mpt-section-polar-banner {
	position: relative;
	width: 100%;
	overflow: hidden;
	background-color: #002b12;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	padding-top: 130px;
	padding-bottom: 130px;
	color: #ffffff;
	min-height: 600px;
	display: flex;
	align-items: center;
}

/* Capa de fondo extendida para el desplazamiento Parallax, con fondo cover centrado verticalmente */
.mpt-polar-parallax-bg {
	position: absolute;
	top: -15%;
	left: 0;
	width: 100%;
	height: 130%;
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	pointer-events: none;
	z-index: 0;
	transform: translate3d(0, 0, 0);
	will-change: transform;
}

/* Superposición degradada en verde corporativo oscuro para contraste WCAG */
.mpt-polar-parallax-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(rgba(0, 36, 15, 0.72), rgba(0, 36, 15, 0.85));
	pointer-events: none;
	z-index: 1;
}

/* Animación Parallax nativa con Scroll-Driven Animations (soporte moderno) */
@supports ((animation-timeline: view()) and (animation-range: entry)) {
	.mpt-section-polar-banner {
		view-timeline-name: --mpt-polar-timeline;
	}

	.mpt-polar-parallax-bg {
		animation: mpt-polar-parallax-anim linear both;
		animation-timeline: --mpt-polar-timeline;
		animation-range: entry 0% exit 100%;
	}

	@keyframes mpt-polar-parallax-anim {
		from {
			transform: translate3d(0, -8%, 0);
		}
		to {
			transform: translate3d(0, 8%, 0);
		}
	}
}

/* Accesibilidad: desactivar animación si el usuario prefiere movimiento reducido */
@media (prefers-reduced-motion: reduce) {
	.mpt-polar-parallax-bg {
		animation: none !important;
		transform: none !important;
	}
}

/* Envoltorio del contenido interior con ancho máximo de lectura */
.mpt-section-polar-banner .polar-banner-content,
.polar-banner .content {
	max-width: 860px;
}

/* Título principal en acento dorado con jerarquía visual destacada */
.mpt-section-polar-banner h2,
.polar-banner h2 {
	color: #ffd715;
	font-weight: 850;
	font-size: clamp(2rem, 3.5vw, 2.85rem);
	line-height: 1.22;
	margin-bottom: 20px;
}

/* Párrafo descriptivo con alto contraste y amplio interlineado */
.mpt-section-polar-banner p,
.polar-banner p {
	color: rgba(255, 255, 255, 0.95);
	font-size: 1.125rem;
	max-width: 800px;
	margin-bottom: 32px;
	line-height: 1.7;
}

/* Ajustes adaptables para dispositivos móviles */
@media (max-width: 767.98px) {
	.mpt-section-polar-banner {
		padding-top: 80px;
		padding-bottom: 80px;
		min-height: 440px;
	}

	.mpt-section-polar-banner p,
	.polar-banner p {
		font-size: 1rem;
		margin-bottom: 24px;
	}
}

/* === Page Format V2 - Inca Trail Tour Cards (Design Mockup) === */

/* Contenedor principal de la tarjeta */
.mpt-inca-card {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	background-color: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05);
	/* Transformación base para evitar saltos de apilamiento */
	translate: 0 0;
	scale: 1;
	transition: translate 0.35s cubic-bezier(0.2, 0.8, 0.2, 1),
	            box-shadow 0.35s cubic-bezier(0.2, 0.8, 0.2, 1),
	            border-color 0.3s ease;
}

/* Efecto hover elegante y suave en la tarjeta */
.mpt-inca-card:hover {
	translate: 0 -8px;
	border-color: rgba(2, 107, 57, 0.28);
	box-shadow: 0 20px 36px -6px rgba(0, 44, 18, 0.15), 0 8px 16px -4px rgba(0, 0, 0, 0.04);
}

/* Área multimedia superior con imagen de fondo y superposiciones */
.mpt-inca-card__media {
	position: relative;
	height: 330px;
	width: 100%;
	overflow: hidden;
	background-color: #0b1a11;
}

/* Enlace contenedor de la imagen */
.mpt-inca-card__media-link {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}

/* Imagen con zoom suave en hover */
.mpt-inca-card__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	scale: 1;
	transition: scale 0.6s cubic-bezier(0.25, 1, 0.5, 1);
	will-change: scale;
}

.mpt-inca-card:hover .mpt-inca-card__img {
	scale: 1.07;
}

/* Degradado oscuro para asegurar contraste y legibilidad */
.mpt-inca-card__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0.15) 45%, rgba(0, 0, 0, 0.78) 100%);
	pointer-events: none;
	transition: opacity 0.3s ease;
}

.mpt-inca-card:hover .mpt-inca-card__overlay {
	opacity: 0.92;
}

/* Contenedor de contenido superior sobre la foto */
.mpt-inca-card__media-content {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	padding: 18px 20px 0;
	z-index: 2;
	pointer-events: auto;
}

/* Etiqueta / Categoría superior en color de acento */
.mpt-inca-card__category {
	display: inline-block;
	color: #ffd715;
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin-bottom: 4px;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}

/* Título blanco con jerarquía destacada */
.mpt-inca-card__title {
	font-size: 1.15rem;
	font-weight: 800;
	line-height: 1.32;
	margin-bottom: 0;
}

.mpt-inca-card__title a {
	color: #ffffff;
	text-decoration: none;
	text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	transition: color 0.25s ease;
}

.mpt-inca-card__title a:hover {
	color: #ffd715;
}

/* Línea de acento amarilla debajo del título */
.mpt-inca-card__title-accent {
	width: 48px;
	height: 3px;
	background-color: #ffd715;
	border-radius: 2px;
	margin-top: 7px;
	margin-bottom: 8px;
	transition: width 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.mpt-inca-card:hover .mpt-inca-card__title-accent {
	width: 76px;
}

/* Badge de duración con icono de reloj */
.mpt-inca-card__duration {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #ffffff;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}

.mpt-inca-card__icon-clock {
	color: #ffffff;
	flex-shrink: 0;
}

/* Bloque inferior de reseñas y estrellas */
.mpt-inca-card__reviews {
	position: absolute;
	right: 18px;
	bottom: 14px;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	pointer-events: none;
}

/* Estrellas doradas */
.mpt-inca-card__stars {
	color: #ffd715;
	font-size: 0.95rem;
	letter-spacing: 2px;
	line-height: 1;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}

/* Contador de reseñas */
.mpt-inca-card__reviews-count {
	color: #ffffff;
	font-size: 0.70rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.7);
}

/* Barra de altitudes corporativa verde */
.mpt-inca-card__alt-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	background-color: #026b39;
	color: #ffffff;
	padding: 9px 18px;
	font-size: 0.75rem;
	font-weight: 600;
	width: 100%;
}

.mpt-inca-card__alt-item {
	display: flex;
	align-items: center;
	gap: 5px;
	white-space: nowrap;
}

.mpt-inca-card__alt-label {
	color: rgba(255, 255, 255, 0.88);
	font-weight: 600;
}

.mpt-inca-card__alt-val {
	color: #ffffff;
	font-weight: 700;
}

.mpt-inca-card__alt-peak-icon {
	color: #ffd715;
	font-size: 0.75rem;
}

.mpt-inca-card__alt-divider {
	width: 1px;
	height: 14px;
	background-color: rgba(255, 255, 255, 0.28);
	flex-shrink: 0;
}

/* Cuerpo de la tarjeta */
.mpt-inca-card__body {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	padding: 20px 22px 18px;
	background-color: #ffffff;
}

/* Ubicación con icono de pin */
.mpt-inca-card__location {
	display: flex;
	align-items: center;
	gap: 6px;
	color: #555555;
	font-size: 0.82rem;
	margin-bottom: 10px;
}

.mpt-inca-card__icon-pin {
	color: #737373;
	flex-shrink: 0;
}

.mpt-inca-card__location-text {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: block;
	max-width: 100%;
}

/* Extracto descriptivo limitado a 3 líneas */
.mpt-inca-card__excerpt {
	color: #4a5568;
	font-size: 0.84rem;
	line-height: 1.5;
	margin-bottom: 14px;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 54px;
}

/* Fila de estadísticas clave con subrayado */
.mpt-inca-card__stats {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-bottom: 14px;
}

.mpt-inca-card__stat-col {
	display: flex;
	flex-direction: column;
	border-bottom: 1px solid #e5e5e5;
	padding-bottom: 8px;
}

.mpt-inca-card__stat-label {
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	color: #171717;
	text-transform: uppercase;
	margin-bottom: 3px;
}

.mpt-inca-card__stat-val {
	font-size: 0.82rem;
	font-weight: 600;
	color: #555555;
}

/* Enlace central "More details" */
.mpt-inca-card__more-wrap {
	display: flex;
	justify-content: center;
	margin-bottom: 14px;
}

.mpt-inca-card__more-link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #026b39;
	font-size: 0.84rem;
	font-weight: 700;
	text-decoration: none;
	transition: color 0.2s ease;
}

.mpt-inca-card__more-link:hover {
	color: #003d19;
}

.mpt-inca-card__more-icon {
	color: #026b39;
	translate: 0 0;
	transition: translate 0.25s ease;
}

.mpt-inca-card:hover .mpt-inca-card__more-icon {
	translate: 0 2px;
}

/* Caja inferior encapsulada con precio y botón */
.mpt-inca-card__cta-box {
	margin-top: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border: 1px solid #e5e5e5;
	border-radius: 12px;
	padding: 12px 18px;
	background-color: #ffffff;
	transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.mpt-inca-card:hover .mpt-inca-card__cta-box {
	border-color: #d1d5db;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

@media (max-width: 767px) {
	.mpt-inca-card__media {
		height: 280px;
	}
	.mpt-inca-card__body {
		padding: 16px;
	}
	.mpt-inca-card__alt-bar {
		padding: 8px 12px;
		font-size: 0.70rem;
	}
	.mpt-inca-card__cta-box {
		padding: 10px 14px;
	}
}

/* Envoltorio de precio */
.mpt-inca-card__price-wrap {
	display: flex;
	flex-direction: column;
}

.mpt-inca-card__price-tag {
	font-size: 0.65rem;
	font-weight: 800;
	color: #737373;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	line-height: 1;
}

.mpt-inca-card__price-amount {
	font-size: 1.25rem;
	font-weight: 900;
	color: #026b39;
	line-height: 1.15;
	margin: 2px 0;
	letter-spacing: -0.02em;
}

.mpt-inca-card__price-sub {
	font-size: 0.62rem;
	font-weight: 700;
	color: #888888;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	line-height: 1;
}

/* Botón CTA View Trip en color naranja, más ancho y con icono animado */
.mpt-inca-card__cta-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background-color: #ffd715;
	color: #ffffff;
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 10px 22px;
	min-width: 125px;
	border-radius: 8px;
	white-space: nowrap;
	translate: 0 0;
	transition: background-color 0.25s ease, translate 0.25s ease, box-shadow 0.25s ease;
	box-shadow: 0 2px 8px rgba(243, 90, 14, 0.25);
}

.mpt-inca-card__cta-btn:hover {
	background-color: #d9480f;
	color: #ffffff;
	translate: 0 -1px;
	box-shadow: 0 4px 14px rgba(217, 72, 15, 0.35);
}

/* Icono animado del botón CTA */
.mpt-inca-card__cta-icon {
	font-size: 0.78rem;
	display: inline-block;
	transition: transform 0.25s ease;
	animation: mptCtaArrowNudge 1.6s ease-in-out infinite;
}

.mpt-inca-card__cta-btn:hover .mpt-inca-card__cta-icon {
	animation: none;
	transform: translateX(4px);
}

/* Animación sutil de desplazamiento lateral para el icono */
@keyframes mptCtaArrowNudge {
	0%, 100% {
		transform: translateX(0);
	}
	50% {
		transform: translateX(3px);
	}
}

@media (prefers-reduced-motion: reduce) {
	.mpt-inca-card__cta-icon {
		animation: none;
	}
}

@media (max-width: 480px) {
	.mpt-inca-card__cta-btn {
		padding: 9px 16px;
		min-width: 110px;
		font-size: 0.74rem;
	}
}

/* === Page Format V2 - The Machu Picchu Team Experience === */
/* Sección completa con imagen de fondo panorámica y degradado lateral */
.mpt-section-experience {
	position: relative;
	background-color: #00441d;
	background-image: linear-gradient(90deg, #00441d 0%, #00441d 44%, rgba(0, 68, 29, 0.96) 58%, rgba(0, 68, 29, 0.55) 74%, rgba(0, 68, 29, 0) 90%), var(--mpt-exp-bg, url('/wp-content/uploads/2026/04/SALKANTAY-TREK-TO-MACHU-PICCHU.jpeg'));
	background-size: cover;
	background-position: right center;
	background-repeat: no-repeat;
	color: #ffffff;
	padding-top: 88px;
	padding-bottom: 88px;
}

/* Badge superior de calidad de operador local */
.mpt-experience-eyebrow {
	display: inline-flex;
	align-items: center;
	font-size: 0.76rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: #ffd715;
	background: rgba(255, 215, 21, 0.12);
	border: 1px solid rgba(255, 215, 21, 0.28);
	padding: 5px 13px;
	border-radius: 20px;
}

/* Título principal en dos líneas con color dorado de marca */
.mpt-experience-title {
	color: #ffd715;
	font-weight: 800;
	text-transform: uppercase;
	font-size: clamp(1.85rem, 3.2vw, 2.75rem);
	line-height: 1.15;
	letter-spacing: -0.01em;
	margin-bottom: 0.85rem;
}

/* Párrafo de introducción */
.mpt-experience-lead {
	color: rgba(255, 255, 255, 0.92);
	font-size: 1.02rem;
	line-height: 1.6;
	max-width: 620px;
}

/* === Experiencias - Bloques abiertos sin bordes exteriores === */
.mpt-experience-card {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 24px;
	display: flex;
	flex-direction: column;
}

/* === Experiencias - Separadores horizontales al apilarse en móvil === */
.mpt-experience-grid > :nth-child(n + 2) {
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}

/* === Experiencias - Una cruz continua entre dos filas y dos columnas === */
@media (min-width: 768px) {
	/* === Experiencias - Primera fila sin borde superior === */
	.mpt-experience-grid > :nth-child(2) { border-top: 0; }
	/* === Experiencias - División vertical central === */
	.mpt-experience-grid > :nth-child(even) {
		border-inline-start: 1px solid rgba(255, 255, 255, 0.2);
	}
}

/* === Experiencias - Encabezado con icono === */
.mpt-experience-card-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 16px;
}

/* Icono simple sin contenedor decorativo */
.mpt-experience-card-icon {
	width: 24px;
	height: 24px;
	min-width: 24px;
	color: #ffd715;
	display: flex;
	align-items: center;
	font-size: 1.05rem;
}

/* Título del paso dentro de la tarjeta */
.mpt-experience-card-title {
	color: #ffffff;
	font-size: 1.08rem;
	font-weight: 700;
	margin-bottom: 8px;
	line-height: 1.4;
}

/* Texto descriptivo del paso */
.mpt-experience-card-text {
	color: rgba(255, 255, 255, 0.78);
	font-size: 0.9rem;
	line-height: 1.6;
	margin-bottom: 0;
}

/* Botón interactivo a WhatsApp para la tarjeta de ahorro */
.mpt-experience-card-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.82rem;
	font-weight: 700;
	color: #026b39;
	background: #ffd715;
	min-height: 44px;
	padding: 10px 16px;
	border-radius: 4px;
	text-decoration: none;
	transition: background-color 0.2s ease, color 0.2s ease;
	margin-top: auto;
	align-self: flex-start;
}

/* Estado interactivo sobrio del botón de contacto */
.mpt-experience-card-btn:hover {
	background: #ffffff;
	color: #026b39;
	text-decoration: none;
}

/* Foco visible para navegación mediante teclado */
.mpt-experience-card-btn:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 3px;
}

/* Pie de la sección con barra vertical de acento */
.mpt-experience-footer {
	margin-top: 1.8rem;
	max-width: 640px;
}

.mpt-experience-footer-bar {
	width: 3px;
	min-width: 3px;
	height: 38px;
	background: #ffd715;
	border-radius: 2px;
}

.mpt-experience-footer-text {
	color: rgba(255, 255, 255, 0.86);
	font-size: 0.92rem;
	line-height: 1.55;
	font-style: italic;
}

/* Adaptación responsive para tablets y pantallas móviles */
@media (max-width: 991.98px) {
	.mpt-section-experience {
		background-image: linear-gradient(180deg, rgba(0, 68, 29, 0.97) 0%, rgba(0, 68, 29, 0.9) 100%), var(--mpt-exp-bg, url('/wp-content/uploads/2026/04/SALKANTAY-TREK-TO-MACHU-PICCHU.jpeg'));
		padding-top: 56px;
		padding-bottom: 56px;
	}

	.mpt-experience-title {
		font-size: 2.1rem;
	}
}

@media (max-width: 575.98px) {
	/* Ajuste compacto de las tarjetas en pantallas pequeñas */
	.mpt-experience-card {
		padding: 16px;
	}

	.mpt-experience-footer-bar {
		height: 48px;
	}
}

/* === Page Format V2 - Tarjetas Destacadas Salkantay (Ship Cards) === */
.ship-card {
	position: relative;
	border-radius: 16px;
	overflow: hidden;
	cursor: pointer;
	background: #00220f;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08), 0 1px 4px rgba(0, 0, 0, 0.04);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.ship-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

.ship-card .card-bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	filter: brightness(0.85) saturate(1.05);
	transition: transform 0.4s ease, filter 0.4s ease;
}

.ship-card:hover .card-bg {
	transform: scale(1.05);
	filter: brightness(0.7) saturate(1.2);
}

.ship-card .card-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(0, 34, 15, 0.9) 0%, rgba(0, 34, 15, 0.35) 45%, transparent 70%);
	z-index: 1;
}

.ship-card .card-content {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 22px 24px;
	z-index: 2;
	color: #ffffff;
}

.ship-card .card-badge {
	display: inline-block;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: #ffd715;
	margin-bottom: 6px;
}

.ship-card .card-title {
	font-weight: 850;
	font-size: 1.35rem;
	line-height: 1.2;
	margin-bottom: 8px;
	color: #ffffff;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
}

.ship-card .card-desc {
	font-size: 0.92rem;
	font-weight: 350;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.85);
	margin-bottom: 14px;
}

.ship-card .card-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.9rem;
	font-weight: 700;
	color: #ffffff;
	text-decoration: none;
	border-bottom: 2px solid #ffd715;
	padding-bottom: 2px;
	transition: color 0.2s ease, border-color 0.2s ease;
}

.ship-card .card-link:hover {
	color: #ffd715;
}

/* Alturas de variantes de Ship Cards perfectamente cuadradas y estilizadas */
.card-featured {
	height: 100%;
	min-height: 700px;
}

.card-medium {
	height: 330px;
}

.card-bottom {
	height: 346px;
}

.right-col {
	display: flex;
	flex-direction: column;
}

.right-col > .row {
	height: 100%;
}

@media (min-width: 992px) {
	.mpt-section-salkantay-grid .row.g-4 > .col-lg-6:first-child,
	.mpt-section-inca-trail .row.g-4 > .col-lg-6:first-child {
		display: flex;
		flex-direction: column;
	}
}

@media (max-width: 991px) {
	.card-featured {
		height: 540px;
		min-height: unset;
	}
	.card-medium {
		height: 320px;
	}
	.card-bottom {
		height: 320px;
	}
}

@media (max-width: 575px) {
	.card-featured {
		height: 440px;
		min-height: unset;
	}
	.card-medium,
	.card-bottom {
		height: 320px;
		min-height: unset;
	}
}

/* === Page Format V2 - Travel Blog (WM Header y Tabs) === */
.wm-header {
	text-align: center;
	padding: 50px 20px 10px;
}

.wm-eyebrow {
	font-size: 0.8rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #026b39;
	font-weight: 700;
	margin-bottom: 6px;
}

.wm-title {
	font-size: clamp(2.2rem, 4vw, 3.5rem);
	font-weight: 850;
	color: #026b39;
	line-height: 1.1;
	margin-bottom: 0;
}

.wm-tabs-wrapper {
	display: flex;
	justify-content: center;
	padding: 24px 0 10px;
	overflow-x: auto;
	scrollbar-width: none;
}

.wm-tabs-wrapper::-webkit-scrollbar {
	display: none;
}

.wm-nav {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: center;
	list-style: none;
	padding: 0 20px;
	margin: 0;
}

.wm-nav .nav-link {
	font-size: 0.92rem;
	font-weight: 600;
	color: #111111;
	border: 1.5px solid #d4ded7;
	border-radius: 50px;
	padding: 8px 22px;
	background: transparent;
	cursor: pointer;
	transition: all 0.2s ease;
	white-space: nowrap;
}

.wm-nav .nav-link:hover {
	border-color: #026b39;
	color: #026b39;
}

.wm-nav .nav-link.active {
	background: #ffd715 !important;
	border-color: #ffd715 !important;
	color: #026b39 !important;
	font-weight: 800;
}

/* === Travel Blog - Pestañas adaptables a móviles === */
@media (max-width: 580px) {
	.wm-nav { flex-wrap: wrap; }
}

/* === Travel Blog - Controles táctiles y foco de teclado === */
.mpt-section-blog-tabs .nav-link,
.mpt-section-blog-tabs .wm-btn {
	min-height: 44px;
}

/* === Travel Blog - Foco visible en pestañas y artículos === */
.mpt-section-blog-tabs button:focus-visible,
.mpt-section-blog-tabs a:focus-visible {
	outline: 2px solid #026b39;
	outline-offset: 4px;
}

.wm-card {
	border: none;
	background: transparent;
}

.wm-card-img-wrap {
	overflow: hidden;
	border-radius: 10px;
	margin-bottom: 12px;
}

.wm-card-img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: 10px;
	display: block;
	transition: transform 0.4s ease;
}

.wm-card:hover .wm-card-img {
	transform: scale(1.03);
}

.wm-card-region {
	font-size: 0.75rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #026b39;
	font-weight: 700;
	margin-bottom: 6px;
}

.wm-card-title {
	font-weight: 800;
	font-size: 1.15rem;
	line-height: 1.35;
	margin-bottom: 8px;
}

.wm-card-title a {
	color: #17251e;
	text-decoration: none;
	transition: color 0.2s ease;
}

.wm-card-title a:hover {
	color: #026b39;
}

.wm-card-desc {
	font-size: 0.88rem;
	color: #55685d;
	line-height: 1.6;
}

.wm-cta-wrap {
	text-align: center;
	padding: 36px 0 50px;
}

.wm-btn {
	background: #ffd715;
	color: #026b39;
	border: none;
	border-radius: 50px;
	padding: 12px 30px;
	font-size: 0.95rem;
	font-weight: 700;
	cursor: pointer;
	text-decoration: none;
	display: inline-block;
	transition: background-color 0.2s ease, transform 0.15s ease, color 0.2s ease;
}

.wm-btn:hover {
	background: #026b39;
	color: #ffffff;
	transform: translateY(-2px);
}

/* === Page Format V2 - Bloque de Contacto y Formulario === */
.cat_contact_form {
	background: #f8faf8;
	padding: 50px 0 70px;
}

.cat_contact_form #mpt-contact .mpt-card {
	background: #ffffff;
	border: 1px solid #e2ece5;
	border-radius: 12px;
	padding: 36px;
	max-width: 900px;
	margin: 0 auto;
	box-shadow: 0 4px 20px rgba(2, 107, 57, 0.06);
}

.cat_contact_form #mpt-contact .mpt-card-header {
	padding-bottom: 24px;
	text-align: center;
	border-bottom: 1px solid #e8eee9;
}

.cat_contact_form #mpt-contact .mpt-card-header h2 {
	font-size: 1.8rem;
	font-weight: 850;
	color: #026b39;
	margin-bottom: 0.35rem;
}

.cat_contact_form #mpt-contact .form-label {
	font-weight: 700;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #4b5f55;
	margin-bottom: 0.35rem;
}

.cat_contact_form #mpt-contact .form-control {
	border-radius: 6px;
	border: 1px solid #c9d8cf;
	padding: 0.7rem 0.95rem;
	font-size: 0.95rem;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.cat_contact_form #mpt-contact .form-control:focus {
	border-color: #026b39;
	box-shadow: 0 0 0 0.2rem rgba(2, 107, 57, 0.15);
}

.cat_contact_form #mpt-contact .mpt-btn-submit {
	background: #026b39;
	border: none;
	border-radius: 6px;
	padding: 0.85rem 2rem;
	font-size: 1.05rem;
	font-weight: 700;
	color: #ffffff;
	width: 100%;
	transition: background-color 0.25s ease, transform 0.2s ease, box-shadow 0.25s ease;
}

.cat_contact_form #mpt-contact .mpt-btn-submit:hover:not(:disabled) {
	background: #ffd715;
	color: #026b39;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(2, 107, 57, 0.2);
}

/* === Page Format V2 - Espaciado Entre Secciones (Design System 8px Grid) === */
/* Separación clara y consistente entre secciones (96px escritorio / 64px tablet / 48px móvil) */
.mpt-section-py {
	padding-top: 96px !important;
	padding-bottom: 96px !important;
}

@media (max-width: 991px) {
	.mpt-section-py {
		padding-top: 64px !important;
		padding-bottom: 64px !important;
	}
}

@media (max-width: 575px) {
	.mpt-section-py {
		padding-top: 48px !important;
		padding-bottom: 48px !important;
	}
}

/* === Amazon Tours - Tarjetas Gráficas y Tabs (Manu & Tambopata) === */

/* Contenedor de la pestaña de navegación con título y descripción */
.mpt-amazon-tabs {
	gap: 16px;
	border: none;
}

.mpt-amazon-tabs .nav-item {
	margin: 0;
}

.mpt-amazon-tabs .nav-link {
	background-color: #ffffff;
	color: #026b39;
	border: 2px solid #026b39;
	border-radius: 16px;
	padding: 12px 26px;
	min-width: 260px;
	text-align: left;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	display: inline-flex;
	align-items: center;
	gap: 16px;
	cursor: pointer;
	translate: 0 0;
	transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, translate 0.25s ease;
}

.mpt-amazon-tabs .mpt-amazon-tab__icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background-color: #eaf3ed;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-size: 1.25rem;
	color: #026b39;
	transition: background-color 0.25s ease, color 0.25s ease;
}

.mpt-amazon-tabs .mpt-amazon-tab__content {
	display: flex;
	flex-direction: column;
	line-height: 1.25;
}

.mpt-amazon-tabs .mpt-amazon-tab__title {
	font-size: 1.05rem;
	font-weight: 800;
	color: #026b39;
	letter-spacing: 0.01em;
	transition: color 0.25s ease;
}

.mpt-amazon-tabs .mpt-amazon-tab__desc {
	font-size: 0.8rem;
	font-weight: 500;
	color: #557062;
	margin-top: 3px;
	transition: color 0.25s ease;
}

/* Hover */
.mpt-amazon-tabs .nav-link:hover {
	background-color: #f3f8f5;
	border-color: #026b39;
	translate: 0 -2px;
	box-shadow: 0 6px 16px rgba(2, 107, 57, 0.15);
}

.mpt-amazon-tabs .nav-link:hover .mpt-amazon-tab__icon {
	background-color: #026b39;
	color: #ffd715;
}

/* Active */
.mpt-amazon-tabs .nav-link.active {
	background-color: #026b39;
	border-color: #026b39;
	box-shadow: 0 8px 24px rgba(2, 107, 57, 0.28);
}

.mpt-amazon-tabs .nav-link.active .mpt-amazon-tab__icon {
	background-color: rgba(255, 255, 255, 0.15);
	color: #ffd715;
}

.mpt-amazon-tabs .nav-link.active .mpt-amazon-tab__title {
	color: #ffffff;
}

.mpt-amazon-tabs .nav-link.active .mpt-amazon-tab__desc {
	color: rgba(255, 255, 255, 0.85);
}

@media (max-width: 575px) {
	.mpt-amazon-tabs .nav-link {
		width: 100%;
		min-width: 0;
		padding: 10px 18px;
	}
}

/* Tarjeta Gráfica Amazon (+30% altura) */
.mpt-amazon-card {
	position: relative;
	border-radius: 16px;
	overflow: hidden;
	background-color: #00220f;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 650px;
	padding: 28px;
	box-shadow: 0 4px 18px rgba(0, 0, 0, 0.09), 0 1px 4px rgba(0, 0, 0, 0.04);
	cursor: pointer;
	translate: 0 0;
	scale: 1;
	transition: translate 0.35s cubic-bezier(0.2, 0, 0, 1), box-shadow 0.35s cubic-bezier(0.2, 0, 0, 1);
}

.mpt-amazon-card:hover {
	translate: 0 -8px;
	box-shadow: 0 16px 36px rgba(0, 35, 15, 0.28), 0 4px 12px rgba(0, 0, 0, 0.12);
}

/* Imagen de fondo con efecto zoom suave */
.mpt-amazon-card__bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 1;
	translate: 0 0;
	scale: 1;
	filter: brightness(0.88) saturate(1.1);
	transition: scale 0.65s cubic-bezier(0.2, 0, 0, 1), filter 0.65s ease;
}

.mpt-amazon-card:hover .mpt-amazon-card__bg {
	scale: 1.08;
	filter: brightness(0.78) saturate(1.25);
}

/* Gradiente de overlay oscuro para legibilidad óptima */
.mpt-amazon-card__overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(180deg, rgba(0, 20, 8, 0.6) 0%, rgba(0, 20, 8, 0.15) 35%, rgba(0, 25, 10, 0.68) 65%, rgba(0, 20, 8, 0.96) 100%);
	transition: background 0.35s ease;
}

/* Encabezado superior con badge y duración */
.mpt-amazon-card__top {
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	flex-wrap: wrap;
}

.mpt-amazon-card__badge {
	display: inline-flex;
	align-items: center;
	padding: 4px 12px;
	background-color: rgba(2, 107, 57, 0.9);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	color: #ffffff;
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	border-radius: 50px;
	border: 1px solid rgba(255, 215, 21, 0.45);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

.mpt-amazon-card__badge i {
	color: #ffd715;
}

.mpt-amazon-card__duration {
	display: inline-flex;
	align-items: center;
	padding: 4px 12px;
	background-color: rgba(0, 0, 0, 0.6);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	color: #ffd715;
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	border-radius: 50px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

/* Parte inferior con título y fila de precio / CTA */
.mpt-amazon-card__bottom {
	position: relative;
	z-index: 3;
	margin-top: auto;
	padding-top: 24px;
}

.mpt-amazon-card__title {
	color: #ffffff;
	font-weight: 800;
	font-size: 1.22rem;
	line-height: 1.3;
	margin-bottom: 16px;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.6);
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.mpt-amazon-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	padding-top: 14px;
}

.mpt-amazon-card__price-wrap {
	display: flex;
	flex-direction: column;
}

.mpt-amazon-card__price-prefix {
	font-size: 0.72rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: rgba(255, 255, 255, 0.75);
	font-weight: 600;
	line-height: 1;
}

.mpt-amazon-card__price-val {
	font-size: 1.25rem;
	font-weight: 850;
	color: #ffd715;
	line-height: 1.2;
	text-shadow: 0 1px 6px rgba(0, 0, 0, 0.5);
}

.mpt-amazon-card__cta {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 16px;
	background-color: rgba(255, 255, 255, 0.15);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	border: 1px solid rgba(255, 255, 255, 0.35);
	color: #ffffff;
	font-size: 0.82rem;
	font-weight: 700;
	border-radius: 50px;
	translate: 0 0;
	transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, translate 0.25s ease;
}

.mpt-amazon-card:hover .mpt-amazon-card__cta {
	background-color: #ffd715;
	border-color: #ffd715;
	color: #00220f;
	translate: 2px 0;
}

.mpt-amazon-card__cta i {
	translate: 0 0;
	transition: translate 0.25s ease;
}

.mpt-amazon-card:hover .mpt-amazon-card__cta i {
	translate: 3px 0;
}

@media (max-width: 767px) {
	.mpt-amazon-card {
		min-height: 570px;
		padding: 24px;
	}

	.mpt-amazon-card__title {
		font-size: 1.15rem;
	}
}

/* === Page Format V2 - Why Choose Us (Item Boxes & Visual Gallery) === */

.mpt-why-us__eyebrow {
	display: inline-block;
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #026b39;
	background-color: #eaf3ed;
	padding: 5px 16px;
	border-radius: 50px;
}

/* Tarjeta minimalista de cada motivo */
.mpt-why-card {
	background-color: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	padding: 24px;
	display: flex;
	align-items: flex-start;
	gap: 16px;
}

/* Icono lineal sin fondo ni efectos interactivos */
.mpt-why-card__icon-wrap {
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-size: 1.15rem;
	color: #026b39;
}

/* Tarjeta destacada mediante un único borde corporativo */
.mpt-why-card--highlight {
	background: #ffffff;
	border-color: #026b39;
}

/* Icono de la tarjeta destacada con acento de marca */
.mpt-why-card--highlight .mpt-why-card__icon-wrap {
	color: #026b39;
}

/* Contenido de la tarjeta */
.mpt-why-card__body {
	flex: 1;
}

.mpt-why-card__title {
	font-size: 1.05rem;
	font-weight: 700;
	color: #026b39;
	margin-bottom: 0;
	line-height: 1.4;
}

/* Texto descriptivo con espaciado editorial */
.mpt-why-card__text {
	font-size: 0.92rem;
	color: #737373;
	line-height: 1.6;
	margin-bottom: 0;
}

/* Tira de fotos de respaldo visual */
.mpt-why-photo {
	position: relative;
	border-radius: 14px;
	overflow: hidden;
	height: 220px;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
	cursor: pointer;
}

.mpt-why-photo img {
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
	transform: scale(1);
}

.mpt-why-photo:hover img {
	transform: scale(1.07);
}

.mpt-why-photo__label {
	position: absolute;
	bottom: 12px;
	left: 12px;
	background: rgba(0, 34, 15, 0.78);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	color: #ffffff;
	font-size: 0.78rem;
	font-weight: 700;
	padding: 4px 12px;
	border-radius: 50px;
	border: 1px solid rgba(255, 215, 21, 0.4);
	letter-spacing: 0.03em;
}

@media (max-width: 767px) {
	/* Ajuste compacto de las tarjetas en móviles */
	.mpt-why-card {
		padding: 20px 16px;
		gap: 16px;
	}

	/* Escala del icono para pantallas pequeñas */
	.mpt-why-card__icon-wrap {
		width: 28px;
		height: 28px;
		font-size: 1rem;
	}

	/* Escala del título para pantallas pequeñas */
	.mpt-why-card__title {
		font-size: 1rem;
	}

	.mpt-why-photo {
		height: 180px;
	}
}

/* === Section 6.9 - Inca Trail vs Salkantay Trek Comparison Table === */

.mpt-trek-overview-card {
	border: 1.5px solid #eef2ef;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.mpt-trek-overview-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 30px rgba(2, 107, 57, 0.08) !important;
	border-color: #026b39;
}

.mpt-trek-badge {
	position: absolute;
	top: 16px;
	left: 16px;
	z-index: 2;
	padding: 6px 14px;
	border-radius: 50px;
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
}

.mpt-trek-badge--salkantay {
	background-color: #026b39;
	color: #ffffff;
	border: 1px solid rgba(255, 215, 21, 0.4);
}

.mpt-trek-badge--inca {
	background-color: #ffd715;
	color: #171717;
	border: 1px solid rgba(0, 0, 0, 0.08);
}

/* Botón Toggle de la Tabla Comparativa */
.mpt-compare-toggle-btn {
	border: 2px solid #026b39;
	color: #026b39;
	background-color: #ffffff;
	font-size: 0.98rem;
	letter-spacing: 0.02em;
	transition: all 0.3s ease;
	cursor: pointer;
}

.mpt-compare-toggle-btn:hover {
	background-color: #026b39;
	color: #ffffff;
	border-color: #026b39;
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(2, 107, 57, 0.16) !important;
}

.mpt-compare-toggle-btn:focus,
.mpt-compare-toggle-btn:active {
	background-color: #026b39;
	color: #ffffff;
	border-color: #026b39;
	box-shadow: 0 0 0 0.25rem rgba(2, 107, 57, 0.2) !important;
}

.mpt-compare-toggle-btn:not(.collapsed) {
	background-color: #eaf3ed;
	color: #026b39;
	border-color: #026b39;
}

.mpt-compare-toggle-btn.collapsed .mpt-toggle-text-hide {
	display: none;
}

.mpt-compare-toggle-btn:not(.collapsed) .mpt-toggle-text-show {
	display: none;
}

/* Envoltorio de la tabla */
.mpt-compare-wrap {
	background-color: #ffffff;
	border: 1.5px solid #eef2ef;
	border-radius: 20px;
	box-shadow: 0 10px 32px rgba(2, 107, 57, 0.04);
	overflow: hidden;
}

/* Estructura de la tabla comparativa */
.mpt-compare-table {
	min-width: 720px;
	border-collapse: separate;
	border-spacing: 0;
}

.mpt-compare-table thead th {
	padding: 22px 24px;
	border-bottom: 2px solid #e2ece5;
	background-color: #fafcfb;
}

.mpt-compare-th-feature {
	width: 24%;
	min-width: 190px;
	vertical-align: middle;
}

.mpt-compare-th-label {
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #64746b;
}

.mpt-compare-th-salkantay {
	width: 38%;
	background-color: #f6faf7 !important;
	border-left: 1.5px solid #e6efe8;
	border-right: 1.5px solid #e6efe8;
	vertical-align: middle;
}

.mpt-compare-th-inca {
	width: 38%;
	background-color: #ffffff !important;
	vertical-align: middle;
}

.mpt-compare-table tbody th,
.mpt-compare-table tbody td {
	padding: 18px 24px;
	border-bottom: 1px solid #edf2ee;
	font-size: 0.92rem;
	vertical-align: top;
	color: #49544e;
	line-height: 1.6;
}

.mpt-compare-table tbody tr:hover td,
.mpt-compare-table tbody tr:hover th {
	background-color: rgba(2, 107, 57, 0.015);
}

.mpt-compare-td-feature {
	background-color: #ffffff;
	font-weight: 700;
	color: #026b39;
}

.mpt-compare-feature-tag {
	display: flex;
	align-items: center;
	gap: 12px;
	color: #026b39;
	font-size: 0.92rem;
	font-weight: 750;
}

.mpt-compare-icon-wrap {
	width: 34px;
	height: 34px;
	border-radius: 10px;
	background-color: #eaf3ed;
	color: #026b39;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.95rem;
	flex-shrink: 0;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.mpt-compare-table tbody tr:hover .mpt-compare-icon-wrap {
	background-color: #026b39;
	color: #ffd715;
}

.mpt-compare-row-verdict td {
	padding-top: 24px;
	padding-bottom: 24px;
}

/* Banner de veredicto y asesoría */
.mpt-compare-verdict {
	background-color: #026b39;
	box-shadow: 0 16px 36px rgba(2, 107, 57, 0.16);
	border: 1px solid rgba(255, 215, 21, 0.2);
}

/* Ajustes adaptables en móvil */
@media (max-width: 767px) {
	.mpt-compare-table th.mpt-compare-th-feature,
	.mpt-compare-table th.mpt-compare-td-feature {
		position: sticky;
		left: 0;
		z-index: 3;
		background-color: #ffffff;
		box-shadow: 3px 0 10px rgba(0, 0, 0, 0.05);
	}

	.mpt-compare-table thead th.mpt-compare-th-feature {
		background-color: #fafcfb;
		z-index: 4;
	}

	.mpt-compare-table tbody th,
	.mpt-compare-table tbody td {
		padding: 14px 16px;
		font-size: 0.88rem;
	}
}

/* === Section 6.10 - Committed to Our People and Our Land (Impact Cards & Accreditation) === */

.mpt-commitment-card {
	background-color: #ffffff;
	border: 1.5px solid #eef2ef;
	border-radius: 18px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.mpt-commitment-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 30px rgba(2, 107, 57, 0.08);
	border-color: #026b39;
}

.mpt-commitment-card--highlight {
	background: linear-gradient(135deg, #ffffff 0%, #f6faf7 100%);
	border-color: #c9e3d3;
}

.mpt-commitment-card__img-wrap {
	height: 200px;
	overflow: hidden;
	position: relative;
	background-color: #eaf3ed;
}

.mpt-commitment-card__img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
	display: block;
}

.mpt-commitment-card:hover .mpt-commitment-card__img {
	transform: scale(1.06);
}

.mpt-commitment-card__icon-badge {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: rgba(2, 107, 57, 0.9);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	color: #ffd715;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.15rem;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.2);
	transition: background-color 0.3s ease, transform 0.3s ease, color 0.3s ease;
}

.mpt-commitment-card:hover .mpt-commitment-card__icon-badge {
	background-color: #ffd715;
	color: #171717;
	transform: scale(1.08);
}

.mpt-commitment-card__body {
	padding: 24px;
}

.mpt-commitment-card__tag {
	font-size: 0.75rem;
	font-weight: 750;
	color: #171717;
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	padding: 5px 12px;
	border-radius: 50px;
	letter-spacing: 0.04em;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.mpt-commitment-card__tag--law {
	background: rgba(254, 234, 232, 0.95);
	color: #c02b1d;
}

.mpt-commitment-card__stat-badge {
	font-size: 0.75rem;
	font-weight: 800;
	color: #026b39;
	background: rgba(255, 255, 255, 0.95);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	padding: 5px 14px;
	border-radius: 50px;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.mpt-commitment-card__title {
	font-size: 1.15rem;
	font-weight: 750;
	color: #026b39;
	margin-bottom: 12px;
	line-height: 1.35;
}

.mpt-commitment-card__text {
	font-size: 0.92rem;
	color: #55625a;
	line-height: 1.6;
	margin-bottom: 0;
	flex-grow: 1;
}

.mpt-commitment-card__link {
	display: inline-block;
	font-size: 0.86rem;
	font-weight: 700;
	color: #026b39;
	text-decoration: none;
	margin-top: 12px;
	transition: color 0.2s ease;
}

.mpt-commitment-card__link:hover {
	color: #003e1a;
	text-decoration: underline;
}

/* Envoltorio de Acreditación Oficial */
.mpt-accreditation-wrap {
	background: linear-gradient(135deg, #f7faf8 0%, #ffffff 100%);
	border: 1.5px solid #e2ece5;
	box-shadow: 0 10px 30px rgba(2, 107, 57, 0.04);
}

.mpt-cert-frame {
	position: relative;
	max-width: 290px;
	margin: 0 auto;
}

.mpt-cert-seal {
	position: absolute;
	bottom: -10px;
	right: 10px;
	background-color: #ffd715;
	color: #171717;
	font-size: 0.75rem;
	font-weight: 800;
	padding: 4px 14px;
	border-radius: 50px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.14);
	display: flex;
	align-items: center;
	gap: 6px;
}

@media (max-width: 767px) {
	.mpt-commitment-card {
		padding: 22px 18px;
	}

	.mpt-commitment-card__icon-wrap {
		width: 46px;
		height: 46px;
		font-size: 1.15rem;
	}

	.mpt-commitment-card__title {
		font-size: 1.05rem;
	}
}

/* === Libro de Reclamaciones - Columnas que permiten ajustar textos largos === */
.mpt-claim-page .row > *,
.mpt-claim-page .mpt-info-row > *,
.mpt-claim-page .mpt-claim-grid > *,
.mpt-claim-page .mpt-claim-provider > * {
    min-width: 0;
    overflow-wrap: anywhere;
}
/* === Libro de Reclamaciones - Etiqueta y valor alineados en la ficha de empresa === */
.mpt-claim-page .mpt-info-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
    gap: 16px;
}
/* === Libro de Reclamaciones - Datos del proveedor sin desbordar el formulario === */
.mpt-claim-page .mpt-claim-provider {
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.7fr) minmax(0, 1.4fr);
}
/* === Libro de Reclamaciones - Campos y datos apilados en pantallas pequeñas === */
@media (max-width: 767.98px) {
    /* === Libro de Reclamaciones - Una columna para la información de empresa === */
    .mpt-claim-page .mpt-info-row,
    .mpt-claim-page .mpt-claim-provider { grid-template-columns: minmax(0, 1fr); }
    /* === Libro de Reclamaciones - Valores alineados con sus etiquetas en móvil === */
    .mpt-claim-page .mpt-info-row strong { text-align: left; }
}

/* === Libro de Reclamaciones - Formato general de página === */
.mpt-claim-page {
	background: #f7f7f5;
	color: #171717;
}

/* === Libro de Reclamaciones - Secciones con espaciado consistente === */
.mpt-claim-page .mpt-section {
	padding: clamp(48px, 7vw, 96px) 0;
}

/* === Libro de Reclamaciones - Bloque del formulario principal === */
.mpt-claim-page .mpt-section-sm {
	padding: 0 0 clamp(64px, 8vw, 96px);
}

/* === Libro de Reclamaciones - Tarjeta del formulario === */
.mpt-claim-page .mpt-claim-book-wrap {
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	box-shadow: none;
	overflow: hidden;
}

/* === Libro de Reclamaciones - Cabecera institucional del formulario === */
.mpt-claim-page .mpt-claim-book-head {
	align-items: flex-start;
	background: #026b39;
	color: #ffffff;
	display: flex;
	gap: 24px;
	justify-content: space-between;
	padding: clamp(24px, 4vw, 40px);
}

/* === Libro de Reclamaciones - Título del formulario === */
.mpt-claim-page .mpt-claim-book-head h2 {
	color: #ffffff;
	font-size: clamp(1.8rem, 3vw, 2.5rem);
	font-weight: 800;
	line-height: 1.12;
	margin: 8px 0;
}

/* === Libro de Reclamaciones - Texto introductorio del formulario === */
.mpt-claim-page .mpt-claim-book-head p {
	color: rgba(255, 255, 255, .82);
	line-height: 1.6;
	margin: 0;
	max-width: 720px;
}

/* === Libro de Reclamaciones - Etiqueta superior del formulario === */
.mpt-claim-page .mpt-claim-book-kicker {
	color: #ffd715;
	display: inline-flex;
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

/* === Libro de Reclamaciones - Número de formulario === */
.mpt-claim-page .mpt-claim-book-code {
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .24);
	border-radius: 8px;
	flex: 0 0 224px;
	padding: 16px;
}

/* === Libro de Reclamaciones - Etiquetas de metadatos === */
.mpt-claim-page .mpt-claim-book-code span,
.mpt-claim-page .mpt-claim-provider span {
	color: #737373;
	display: block;
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .04em;
	margin-bottom: 4px;
	text-transform: uppercase;
}

/* === Libro de Reclamaciones - Valor del número de formulario === */
.mpt-claim-page .mpt-claim-book-code strong {
	color: #ffffff;
	display: block;
}

/* === Libro de Reclamaciones - Datos del proveedor === */
.mpt-claim-page .mpt-claim-provider {
	background: #e5e5e5;
	display: grid;
	gap: 1px;
}

/* === Libro de Reclamaciones - Celdas del proveedor === */
.mpt-claim-page .mpt-claim-provider div {
	background: #f7f7f5;
	padding: 18px 24px;
}

/* === Libro de Reclamaciones - Valores del proveedor === */
.mpt-claim-page .mpt-claim-provider strong {
	color: #171717;
	display: block;
}

/* === Libro de Reclamaciones - Cuerpo del formulario === */
.mpt-claim-page .mpt-claim-book-form {
	padding: clamp(24px, 4vw, 40px);
}

/* === Libro de Reclamaciones - Grupos del formulario === */
.mpt-claim-page .mpt-claim-section {
	border-bottom: 1px solid #e5e5e5;
	padding: 28px 0;
}

/* === Libro de Reclamaciones - Primer grupo del formulario === */
.mpt-claim-page .mpt-claim-section:first-of-type {
	padding-top: 0;
}

/* === Libro de Reclamaciones - Encabezados de grupos === */
.mpt-claim-page .mpt-claim-section h3,
.mpt-claim-page .mpt-claim-section h4 {
	color: #026b39;
	font-weight: 800;
	line-height: 1.25;
	margin: 0 0 18px;
}

/* === Libro de Reclamaciones - Grilla de campos === */
.mpt-claim-page .mpt-claim-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* === Libro de Reclamaciones - Campos de ancho completo === */
.mpt-claim-page .mpt-claim-field.span-2 {
	grid-column: 1 / -1;
}

/* === Libro de Reclamaciones - Etiquetas de campos === */
.mpt-claim-page .mpt-claim-field label {
	color: #171717;
	display: block;
	font-size: .86rem;
	font-weight: 700;
	margin-bottom: 8px;
}

/* === Libro de Reclamaciones - Controles del formulario === */
.mpt-claim-page .mpt-claim-field input,
.mpt-claim-page .mpt-claim-field select,
.mpt-claim-page .mpt-claim-field textarea {
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	color: #171717;
	min-height: 48px;
	padding: 12px 14px;
	width: 100%;
}

/* === Libro de Reclamaciones - Áreas de texto ajustables === */
.mpt-claim-page .mpt-claim-field textarea {
	min-height: 136px;
	resize: vertical;
}

/* === Libro de Reclamaciones - Estados de foco accesibles === */
.mpt-claim-page .mpt-claim-field input:focus,
.mpt-claim-page .mpt-claim-field select:focus,
.mpt-claim-page .mpt-claim-field textarea:focus,
.mpt-claim-page .mpt-claim-choice:focus-within,
.mpt-claim-page .mpt-claim-inline:focus-within,
.mpt-claim-page .mpt-claim-submit:focus-visible,
.mpt-claim-page .mpt-claim-print:focus-visible {
	border-color: #026b39;
	box-shadow: 0 0 0 3px rgba(2, 107, 57, .16);
	outline: 0;
}

/* === Libro de Reclamaciones - Opciones y aceptaciones === */
.mpt-claim-page .mpt-claim-choice,
.mpt-claim-page .mpt-claim-inline {
	align-items: flex-start;
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	cursor: pointer;
	display: flex;
	gap: 12px;
	padding: 16px;
}

/* === Libro de Reclamaciones - Checkboxes y radios === */
.mpt-claim-page .mpt-claim-choice input,
.mpt-claim-page .mpt-claim-inline input {
	accent-color: #026b39;
	flex: 0 0 auto;
	margin-top: 4px;
}

/* === Libro de Reclamaciones - Textos auxiliares === */
.mpt-claim-page .mpt-claim-choice span,
.mpt-claim-page .mpt-claim-inline span,
.mpt-claim-page .mpt-claim-legal-note,
.mpt-claim-page .mpt-claim-provider-note {
	color: #737373;
	line-height: 1.6;
}

/* === Libro de Reclamaciones - Título de opción === */
.mpt-claim-page .mpt-claim-choice strong {
	color: #171717;
	display: block;
	margin-bottom: 4px;
}

/* === Libro de Reclamaciones - Separación de aceptaciones === */
.mpt-claim-page .mpt-claim-inline {
	margin-top: 16px;
}

/* === Libro de Reclamaciones - Datos del representante === */
.mpt-claim-page .mpt-claim-representative {
	background: #f7f7f5;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	margin-top: 18px;
	padding: 20px;
}

/* === Libro de Reclamaciones - Nota reservada al proveedor === */
.mpt-claim-page .mpt-claim-provider-note {
	background: #f7f7f5;
	border: 1px dashed #e5e5e5;
	border-radius: 8px;
	padding: 18px;
}

/* === Libro de Reclamaciones - Campo de seguridad === */
.mpt-claim-page .mpt-claim-captcha {
	margin-top: 18px;
	max-width: 320px;
}

/* === Libro de Reclamaciones - Nota legal === */
.mpt-claim-page .mpt-claim-legal-note {
	font-size: .92rem;
	margin: 18px 0 0;
}

/* === Libro de Reclamaciones - Campo antispam oculto === */
.mpt-claim-page .mpt-claim-hp {
	height: 1px;
	left: -9999px;
	overflow: hidden;
	position: absolute;
	width: 1px;
}

/* === Libro de Reclamaciones - Mensajes de estado === */
.mpt-claim-page .mpt-claim-book-status {
	border-radius: 8px;
	line-height: 1.55;
	margin: 24px 0 0;
	padding: 16px;
}

/* === Libro de Reclamaciones - Estado cargando === */
.mpt-claim-page .mpt-claim-book-status.is-loading {
	background: rgba(255, 215, 21, .16);
	border: 1px solid rgba(255, 215, 21, .45);
	color: #171717;
}

/* === Libro de Reclamaciones - Estado exitoso === */
.mpt-claim-page .mpt-claim-book-status.is-success {
	background: rgba(2, 107, 57, .09);
	border: 1px solid rgba(2, 107, 57, .22);
	color: #026b39;
}

/* === Libro de Reclamaciones - Estado de error === */
.mpt-claim-page .mpt-claim-book-status.is-error {
	background: #fff7f5;
	border: 1px solid #f0c6bd;
	color: #9f2e24;
}

/* === Libro de Reclamaciones - Botón de impresión === */
.mpt-claim-page .mpt-claim-print {
	background: #026b39;
	border: 0;
	border-radius: 8px;
	color: #ffffff;
	display: inline-flex;
	font-weight: 700;
	margin-top: 12px;
	padding: 10px 16px;
}

/* === Libro de Reclamaciones - Botón principal === */
.mpt-claim-page .mpt-claim-submit {
	background: #026b39;
	border: 0;
	border-radius: 8px;
	color: #ffffff;
	font-weight: 800;
	margin-top: 24px;
	min-height: 52px;
	padding: 14px 24px;
	width: 100%;
}

/* === Libro de Reclamaciones - Botón principal deshabilitado === */
.mpt-claim-page .mpt-claim-submit:disabled {
	cursor: wait;
	opacity: .72;
}

/* === Libro de Reclamaciones - Adaptación móvil === */
@media (max-width: 767.98px) {
	.mpt-claim-page .mpt-claim-book-head {
		display: block;
	}

	.mpt-claim-page .mpt-claim-book-code {
		margin-top: 18px;
		width: 100%;
	}

	.mpt-claim-page .mpt-claim-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.mpt-claim-page .mpt-claim-field.span-2 {
		grid-column: auto;
	}
}

/* === All Inclusive Tours - Página premium minimalista === */
.mpt-all-inclusive-page {
	background: #f7f7f5;
	color: #171717;
	overflow: hidden;
}

/* === All Inclusive Tours - Hero principal === */
.mpt-all-inclusive-hero {
	background: #ffffff;
	border-bottom: 1px solid #e5e5e5;
	padding: clamp(64px, 9vw, 120px) 0 clamp(48px, 7vw, 96px);
}

/* === All Inclusive Tours - Título principal === */
.mpt-all-inclusive-hero h1 {
	color: #026b39;
	font-size: clamp(3rem, 7vw, 5.8rem);
	font-weight: 900;
	letter-spacing: -.06em;
	line-height: .95;
	margin: 24px 0;
	text-transform: uppercase;
}

/* === All Inclusive Tours - Texto destacado del hero === */
.mpt-all-inclusive-lead {
	color: #171717;
	font-size: clamp(1.12rem, 2vw, 1.45rem);
	line-height: 1.6;
	margin: 0;
	max-width: 820px;
}

/* === All Inclusive Tours - Tarjeta lateral del hero === */
.mpt-all-inclusive-hero-card {
	background: #026b39;
	border-radius: 8px;
	color: #ffffff;
	padding: clamp(24px, 4vw, 40px);
}

/* === All Inclusive Tours - Etiqueta de tarjeta lateral === */
.mpt-all-inclusive-hero-card span {
	color: #ffd715;
	display: block;
	font-size: .8rem;
	font-weight: 800;
	letter-spacing: .12em;
	margin-bottom: 16px;
	text-transform: uppercase;
}

/* === All Inclusive Tours - Promesa de tarjeta lateral === */
.mpt-all-inclusive-hero-card strong {
	display: block;
	font-size: clamp(1.45rem, 3vw, 2.2rem);
	line-height: 1.15;
}

/* === All Inclusive Tours - Descripción de tarjeta lateral === */
.mpt-all-inclusive-hero-card p {
	color: rgba(255, 255, 255, .82);
	line-height: 1.65;
	margin: 18px 0 0;
}

/* === All Inclusive Tours - Columna fija de introducción === */
.mpt-all-inclusive-sticky {
	position: sticky;
	top: 112px;
}

/* === All Inclusive Tours - Bloque introductorio === */
.mpt-all-inclusive-intro {
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	padding: clamp(24px, 4vw, 40px);
}

/* === All Inclusive Tours - Párrafo introductorio === */
.mpt-all-inclusive-intro p {
	color: #171717;
	font-size: clamp(1.05rem, 1.7vw, 1.22rem);
	line-height: 1.75;
	margin: 0;
}

/* === All Inclusive Tours - Grilla de servicios === */
.mpt-all-inclusive-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* === All Inclusive Tours - Tarjeta de servicio === */
.mpt-all-inclusive-card {
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	padding: 28px;
}

/* === All Inclusive Tours - Número de tarjeta === */
.mpt-all-inclusive-number {
	align-items: center;
	background: #ffd715;
	border-radius: 999px;
	color: #171717;
	display: inline-flex;
	font-size: .82rem;
	font-weight: 900;
	height: 40px;
	justify-content: center;
	margin-bottom: 24px;
	width: 40px;
}

/* === All Inclusive Tours - Título de tarjeta === */
.mpt-all-inclusive-card h3 {
	color: #026b39;
	font-size: clamp(1.2rem, 2vw, 1.55rem);
	font-weight: 800;
	line-height: 1.22;
	margin: 0 0 16px;
}

/* === All Inclusive Tours - Texto de tarjeta === */
.mpt-all-inclusive-card p {
	color: #737373;
	line-height: 1.7;
	margin: 0;
}

/* === All Inclusive Tours - Llamado a la acción final === */
.mpt-all-inclusive-cta {
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	padding: clamp(32px, 5vw, 56px);
	text-align: center;
}

/* === All Inclusive Tours - Título del CTA final === */
.mpt-all-inclusive-cta h2 {
	color: #026b39;
	font-size: clamp(2rem, 4vw, 3.2rem);
	font-weight: 900;
	letter-spacing: -.04em;
	line-height: 1.05;
	margin: 24px auto 0;
	max-width: 820px;
}

/* === All Inclusive Tours - Texto del CTA final === */
.mpt-all-inclusive-cta p {
	color: #737373;
	font-size: 1.08rem;
	line-height: 1.7;
	margin: 18px auto 0;
	max-width: 820px;
}

/* === All Inclusive Tours - Adaptación a tablet y móvil === */
@media (max-width: 991.98px) {
	.mpt-all-inclusive-sticky {
		position: static;
	}

	.mpt-all-inclusive-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* === Why Machu Picchu Team - Página comercial === */
.mpt-why-team-page {
	background: #f7f7f5;
	color: #171717;
	overflow: hidden;
}

/* === Why Machu Picchu Team - Hero editorial === */
.mpt-why-team-hero {
	background: #ffffff;
	border-bottom: 1px solid #e5e5e5;
	padding: clamp(64px, 9vw, 120px) 0 clamp(48px, 7vw, 96px);
}

/* === Why Machu Picchu Team - Título principal === */
.mpt-why-team-hero h1 {
	color: #026b39;
	font-size: clamp(3rem, 7vw, 5.8rem);
	font-weight: 900;
	letter-spacing: -.06em;
	line-height: .95;
	margin: 24px 0 0;
	text-transform: uppercase;
}

/* === Why Machu Picchu Team - Texto del hero === */
.mpt-why-team-hero-text {
	color: #171717;
	font-size: 1.05rem;
	line-height: 1.75;
	margin: 0;
}

/* === Why Machu Picchu Team - Franja de confianza === */
.mpt-why-team-strip {
	background: #026b39;
	border-radius: 8px;
	display: grid;
	gap: 1px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	overflow: hidden;
}

/* === Why Machu Picchu Team - Item de confianza === */
.mpt-why-team-strip > div {
	background: rgba(255, 255, 255, .06);
	padding: 24px;
}

/* === Why Machu Picchu Team - Etiqueta de confianza === */
.mpt-why-team-strip span {
	color: #ffd715;
	display: block;
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .12em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

/* === Why Machu Picchu Team - Valor de confianza === */
.mpt-why-team-strip strong {
	color: #ffffff;
	display: block;
	font-size: clamp(1.15rem, 2vw, 1.45rem);
	line-height: 1.2;
}

/* === Why Machu Picchu Team - Grilla de razones === */
.mpt-why-team-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* === Why Machu Picchu Team - Tarjeta de razón === */
.mpt-why-team-card {
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	padding: 28px;
}

/* === Why Machu Picchu Team - Número de razón === */
.mpt-why-team-number {
	align-items: center;
	background: #ffd715;
	border-radius: 999px;
	color: #171717;
	display: inline-flex;
	font-size: .82rem;
	font-weight: 900;
	height: 40px;
	justify-content: center;
	margin-bottom: 24px;
	width: 40px;
}

/* === Why Machu Picchu Team - Título de razón === */
.mpt-why-team-card h3 {
	color: #026b39;
	font-size: clamp(1.2rem, 2vw, 1.55rem);
	font-weight: 800;
	line-height: 1.22;
	margin: 0 0 16px;
	text-transform: uppercase;
}

/* === Why Machu Picchu Team - Texto de razón === */
.mpt-why-team-card p {
	color: #737373;
	line-height: 1.7;
	margin: 0;
}

/* === Why Machu Picchu Team - CTA final === */
.mpt-why-team-cta {
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	padding: clamp(32px, 5vw, 56px);
	text-align: center;
}

/* === Why Machu Picchu Team - Título del CTA === */
.mpt-why-team-cta h2 {
	color: #026b39;
	font-size: clamp(2rem, 4vw, 3.2rem);
	font-weight: 900;
	letter-spacing: -.04em;
	line-height: 1.05;
	margin: 24px auto 0;
	max-width: 820px;
}

/* === Why Machu Picchu Team - Texto del CTA === */
.mpt-why-team-cta p {
	color: #737373;
	font-size: 1.08rem;
	line-height: 1.7;
	margin: 18px auto 0;
	max-width: 820px;
}

/* === Why Machu Picchu Team - Adaptación responsive === */
@media (max-width: 991.98px) {
	.mpt-why-team-grid,
	.mpt-why-team-strip {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* === Machu Picchu Team Support - Página de soporte === */
.mpt-support-page {
	background: #f7f7f5;
	color: #171717;
	overflow: hidden;
}

/* === Machu Picchu Team Support - Hero principal === */
.mpt-support-hero {
	background: #ffffff;
	border-bottom: 1px solid #e5e5e5;
	padding: clamp(64px, 9vw, 120px) 0 clamp(48px, 7vw, 96px);
}

/* === Machu Picchu Team Support - Título principal === */
.mpt-support-hero h1 {
	color: #026b39;
	font-size: clamp(3rem, 7vw, 5.8rem);
	font-weight: 900;
	letter-spacing: -.06em;
	line-height: .95;
	margin: 24px 0 0;
	text-transform: uppercase;
}

/* === Machu Picchu Team Support - Texto introductorio === */
.mpt-support-lead {
	color: #171717;
	font-size: 1.08rem;
	line-height: 1.75;
	margin: 0;
}

/* === Machu Picchu Team Support - Intro de asistencia === */
.mpt-support-intro {
	align-items: end;
	background: #026b39;
	border-radius: 8px;
	color: #ffffff;
	display: grid;
	gap: 32px;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
	padding: clamp(28px, 5vw, 48px);
}

/* === Machu Picchu Team Support - Título de intro === */
.mpt-support-intro h2 {
	color: #ffffff;
	font-size: clamp(1.8rem, 4vw, 3rem);
	font-weight: 900;
	letter-spacing: -.04em;
	line-height: 1.05;
	margin: 18px 0 0;
}

/* === Machu Picchu Team Support - Texto de intro === */
.mpt-support-intro p {
	color: rgba(255, 255, 255, .84);
	line-height: 1.7;
	margin: 0;
}

/* === Machu Picchu Team Support - Grilla de canales === */
.mpt-support-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* === Machu Picchu Team Support - Tarjeta de canal === */
.mpt-support-card {
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	padding: 28px;
}

/* === Machu Picchu Team Support - Etiqueta de canal === */
.mpt-support-card span,
.mpt-support-info span {
	color: #026b39;
	display: block;
	font-size: .78rem;
	font-weight: 900;
	letter-spacing: .12em;
	margin-bottom: 14px;
	text-transform: uppercase;
}

/* === Machu Picchu Team Support - Enlace principal de canal === */
.mpt-support-card a,
.mpt-support-card strong {
	color: #171717;
	display: inline-block;
	font-size: clamp(1.22rem, 2vw, 1.55rem);
	font-weight: 900;
	line-height: 1.2;
	text-decoration: none;
}

/* === Machu Picchu Team Support - Estado hover de canal === */
.mpt-support-card a:hover {
	color: #026b39;
}

/* === Machu Picchu Team Support - Texto de canal === */
.mpt-support-card p,
.mpt-support-info p {
	color: #737373;
	line-height: 1.7;
	margin: 16px 0 0;
}

/* === Machu Picchu Team Support - Tarjeta de oficina === */
.mpt-support-card-office {
	background: #ffffff;
	border-color: #026b39;
}

/* === Machu Picchu Team Support - Bloques informativos === */
.mpt-support-info {
	background: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	height: 100%;
	padding: 28px;
}

/* === Machu Picchu Team Support - Responsive === */
@media (max-width: 991.98px) {
	.mpt-support-grid,
	.mpt-support-intro {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* ==========================================================================
   === Reviews Archive Page (page-reviews.php) ===
   ========================================================================== */

/* Contenedor general de la página de reseñas */
.mpt-reviews-archive-page {
	background-color: #ffffff;
}

/* Encabezado Hero de la página */
.mpt-reviews-hero {
	background: linear-gradient(180deg, #f7f7f5 0%, #ffffff 100%);
}

/* Eyebrow de la cabecera */
.mpt-reviews-eyebrow {
	font-size: 0.8rem;
	letter-spacing: 0.12em;
	color: #026b39;
}

/* Badge con puntuación 5.0 y estrellas doradas */
.mpt-reviews-score-badge-wrap {
	background: #ffffff;
	border: 1px solid #e5e5e5;
}

/* Barra de filtros por origen */
.mpt-reviews-filter-bar {
	background-color: transparent;
}

/* Botones estilo píldora para filtrar por plataforma */
.mpt-filter-pill-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 18px;
	min-height: 40px;
	font-size: 0.88rem;
	font-weight: 600;
	color: #171717;
	background-color: #f7f7f5;
	border: 1px solid #e5e5e5;
	border-radius: 999px;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

/* Hover de botón de filtro */
.mpt-filter-pill-btn:hover {
	background-color: rgba(2, 107, 57, 0.08);
	border-color: #026b39;
	color: #026b39;
	text-decoration: none;
	transform: translateY(-1px);
}

/* Estado activo del botón de filtro */
.mpt-filter-pill-btn.active {
	background-color: #026b39;
	border-color: #026b39;
	color: #ffffff;
	box-shadow: 0 2px 6px rgba(2, 107, 57, 0.2);
}

/* Tarjeta individual de reseña en el archivo */
.mpt-review-archive-card {
	background-color: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	padding: 24px;
	display: flex;
	flex-direction: column;
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

/* Efecto hover refinado y minimalista en la tarjeta de reseña */
.mpt-review-archive-card:hover {
	transform: translateY(-4px);
	border-color: rgba(2, 107, 57, 0.4);
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
}

/* Contenedor interno de la tarjeta */
.mpt-review-archive-card-inner {
	display: flex;
	flex-direction: column;
	height: 100%;
}

/* Cabecera de la tarjeta con avatar y metadatos */
.mpt-review-archive-header {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 8px;
}

/* Avatar circular del autor */
.mpt-review-archive-card .mpt-review-bubble-avatar {
	width: 48px;
	height: 48px;
	min-width: 48px;
	min-height: 48px;
	border-radius: 50%;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

/* Imagen de avatar */
.mpt-review-archive-card .mpt-review-avatar-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
	border: 2px solid #026b39;
}

/* Iniciales cuando no hay imagen */
.mpt-review-archive-card .mpt-review-avatar-initials {
	width: 100%;
	height: 100%;
	background-color: #026b39;
	color: #ffffff;
	font-size: 0.95rem;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

/* Metadatos del autor */
.mpt-review-archive-author-meta {
	flex: 1 1 auto;
	min-width: 0;
}

/* Nombre del autor */
.mpt-review-archive-card .mpt-review-author-name {
	font-size: 1rem;
	font-weight: 700;
	color: #171717;
	margin: 0 0 2px 0;
	line-height: 1.25;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Icono y nombre de plataforma en la tarjeta */
.mpt-review-platform-icon-wrap {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background-color: #f7f7f5;
	border: 1px solid #e5e5e5;
	border-radius: 4px;
	padding: 2px 8px;
	font-size: 0.76rem;
}

/* Cuerpo con el texto del testimonio */
.mpt-review-archive-text {
	font-size: 0.92rem;
	line-height: 1.65;
	color: #171717;
}

/* Badge de tour relacionado */
.mpt-review-related-tour-badge {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background-color: #f7f7f5;
	border: 1px solid #e5e5e5;
	border-radius: 4px;
	padding: 4px 10px;
	font-size: 0.78rem;
	font-weight: 600;
	color: #171717;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.mpt-review-related-tour-badge:hover {
	background-color: #eef4f0;
	border-color: #026b39;
	color: #026b39;
	text-decoration: none;
}

/* Enlace a la reseña externa */
.mpt-review-archive-footer .mpt-review-external-link {
	font-size: 0.84rem;
	font-weight: 700;
	color: #026b39;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	transition: color 0.2s ease, text-decoration 0.2s ease;
}

.mpt-review-archive-footer .mpt-review-external-link:hover {
	color: #014d28;
	text-decoration: underline;
}

/* ==========================================================================
   === Paginación de Reseñas ===
   ========================================================================== */
.mpt-pagination-nav .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	list-style: none;
	padding: 0;
	margin: 0;
	gap: 6px;
}

.mpt-pagination-nav .page-numbers li {
	display: inline-block;
}

.mpt-pagination-nav .page-numbers a,
.mpt-pagination-nav .page-numbers span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	min-height: 42px;
	padding: 8px 14px;
	font-size: 0.9rem;
	font-weight: 600;
	color: #171717;
	background-color: #ffffff;
	border: 1px solid #e5e5e5;
	border-radius: 6px;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.mpt-pagination-nav .page-numbers a:hover {
	background-color: #f7f7f5;
	border-color: #026b39;
	color: #026b39;
	text-decoration: none;
}

.mpt-pagination-nav .page-numbers .current {
	background-color: #026b39;
	border-color: #026b39;
	color: #ffffff;
	font-weight: 700;
}

.mpt-pagination-nav .page-numbers .dots {
	border-color: transparent;
	background-color: transparent;
	color: #737373;
}

