/* ================================================================
   Custom PE – Modern Visual Override
   Solo overrides visuales: tipografía, colores, sombras, espaciado,
   bordes, transiciones. NO modifica layout/estructura del contenido.
   ================================================================ */

/* ── CSS Custom Properties ──────────────────────────────────────── */
:root {
	--cpe-font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	--cpe-font-serif: 'Playfair Display', Georgia, serif;

	--cpe-text-primary: #1a1a2e;
	--cpe-text-secondary: #4a4a68;
	--cpe-text-muted: #8888a0;

	--cpe-bg-body: #fafafa;
	--cpe-bg-card: #ffffff;
	--cpe-bg-subtle: #f4f4f8;

	--cpe-accent: #2563eb;
	--cpe-accent-hover: #1d4ed8;
	--cpe-accent-light: rgba(37, 99, 235, 0.08);
	--cpe-whatsapp: #25d366;
	--cpe-whatsapp-hover: #1eba59;

	--cpe-border: #e5e7eb;
	--cpe-border-light: #f0f0f5;

	--cpe-radius-sm: 6px;
	--cpe-radius-md: 10px;
	--cpe-radius-lg: 16px;
	--cpe-radius-xl: 24px;

	--cpe-shadow-sm: 0 1px 3px rgba(0,0,0,.04), 0 1px 2px rgba(0,0,0,.06);
	--cpe-shadow-md: 0 4px 12px rgba(0,0,0,.06), 0 2px 4px rgba(0,0,0,.04);
	--cpe-shadow-lg: 0 10px 30px rgba(0,0,0,.08), 0 4px 8px rgba(0,0,0,.04);
	--cpe-shadow-hover: 0 14px 36px rgba(0,0,0,.10), 0 6px 12px rgba(0,0,0,.05);

	--cpe-transition: .25s cubic-bezier(.4,0,.2,1);
	--cpe-transition-slow: .4s cubic-bezier(.4,0,.2,1);
}


/* ── Global / Body ──────────────────────────────────────────────── */
body {
	font-family: var(--cpe-font-sans) !important;
	color: var(--cpe-text-primary) !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	letter-spacing: -0.01em;
}

/* ── Typography ─────────────────────────────────────────────────── */
h1, h2, h3, h4, h5, h6,
.mkdf-page-title,
.mkdf-tour-item-title,
.mkdf-testimonial-title {
	font-family: var(--cpe-font-sans) !important;
	color: var(--cpe-text-primary) !important;
	font-weight: 700 !important;
	letter-spacing: -0.025em !important;
	line-height: 1.2 !important;
}

/* Serif accent solo para h5 / testimoniales / blockquotes */
h5,
h5.mkdf-testimonial-text,
blockquote,
.mkdf-testimonial-text {
	font-family: var(--cpe-font-serif) !important;
	font-weight: 400 !important;
	font-style: italic;
	letter-spacing: 0 !important;
	line-height: 1.5 !important;
}

h1 { font-weight: 800 !important; }
h2 { font-weight: 700 !important; border-bottom: none !important; }
h3 { font-weight: 600 !important; }
h4 { font-weight: 600 !important; }

/* Home headings – limpia bordes y ajusta peso */
.home-h1 > div > h1,
.home-h1 > div > h2 {
	font-weight: 800 !important;
	letter-spacing: -0.03em !important;
}

.home-h2 > div > h2,
.home-h3 h3,
.home-h3 h4,
.home-h4 h4 {
	border-bottom: 1px solid var(--cpe-border-light) !important;
	font-weight: 600 !important;
}

/* Paragraph & body text */
p, li, td, th, label, span, div {
	font-family: var(--cpe-font-sans);
}

p {
	color: var(--cpe-text-secondary);
	line-height: 1.7;
}

a {
	transition: color var(--cpe-transition), opacity var(--cpe-transition);
}


/* ── Header / Navigation ────────────────────────────────────────── */

/* --- Overall menu area: single row flex --- */
.mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area {
	background-color: var(--cpe-bg-card) !important;
	box-shadow: var(--cpe-shadow-sm) !important;
	height: 72px !important;
	transition: background-color var(--cpe-transition-slow), box-shadow var(--cpe-transition-slow) !important;
}

.mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area > .mkdf-vertical-align-containers {
	display: flex !important;
	align-items: center !important;
	height: 72px !important;
	max-width: 1300px;
	margin: 0 auto !important;
	padding: 0 30px !important;
}

/* --- Left: Logo --- */
.mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-header-tabbed-left {
	background-color: transparent !important;
	flex: 0 0 auto !important;
	display: flex !important;
	align-items: center !important;
	height: auto !important;
	float: none !important;
	padding: 0 !important;
}

.mkdf-header-tabbed .mkdf-header-tabbed-left .mkdf-logo-wrapper {
	padding: 0 !important;
}

.mkdf-header-tabbed .mkdf-header-tabbed-left .mkdf-logo-wrapper a {
	height: auto !important;
	max-height: 44px !important;
	display: flex !important;
	align-items: center !important;
}

.mkdf-header-tabbed .mkdf-header-tabbed-left .mkdf-logo-wrapper img {
	max-height: 44px !important;
	width: auto !important;
}

/* --- Right wrapper: takes remaining space --- */
.mkdf-header-tabbed .mkdf-page-header .mkdf-menu-area .mkdf-header-tabbed-right {
	flex: 1 1 auto !important;
	float: none !important;
	display: flex !important;
	align-items: center !important;
	height: auto !important;
	background-color: transparent !important;
}

.mkdf-header-tabbed .mkdf-header-tabbed-right-inner {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	height: auto !important;
}

/* --- Hide top bar (moved to single row) --- */
.mkdf-header-tabbed .mkdf-header-tabbed-top {
	display: none !important;
}

/* --- Bottom bar: menu center + CTA right --- */
.mkdf-header-tabbed .mkdf-header-tabbed-bottom {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	height: auto !important;
	background: transparent !important;
}

/* Menu: centered, takes available space */
.mkdf-header-tabbed .mkdf-header-tabbed-bottom > .mkdf-position-left {
	flex: 1 1 auto !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	opacity: 1 !important;
	width: auto !important;
	float: none !important;
	height: auto !important;
}

.mkdf-header-tabbed .mkdf-header-tabbed-bottom > .mkdf-position-left > .mkdf-position-left-inner {
	display: flex !important;
	justify-content: center !important;
}

/* Right area: WhatsApp CTA */
.mkdf-header-tabbed .mkdf-header-tabbed-bottom > .mkdf-position-right {
	flex: 0 0 auto !important;
	float: none !important;
	display: flex !important;
	align-items: center !important;
	height: auto !important;
}

/* --- Main menu links --- */
.mkdf-main-menu > ul {
	display: flex !important;
	align-items: center !important;
}

.mkdf-main-menu > ul > li {
	display: flex !important;
	align-items: center !important;
	height: auto !important;
}

.mkdf-main-menu > ul > li > a {
	font-family: var(--cpe-font-sans) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	color: var(--cpe-text-primary) !important;
	transition: color var(--cpe-transition) !important;
	padding: 0 16px !important;
	line-height: 72px !important;
	height: 72px !important;
	display: flex !important;
	align-items: center !important;
	position: relative;
}

.mkdf-main-menu > ul > li > a:hover {
	color: var(--cpe-accent) !important;
}

/* Underline hover effect */
.mkdf-main-menu > ul > li > a::after {
	content: '';
	position: absolute;
	bottom: 16px;
	left: 16px;
	right: 16px;
	height: 2px;
	background: var(--cpe-accent);
	border-radius: 1px;
	transform: scaleX(0);
	transition: transform var(--cpe-transition) !important;
}

.mkdf-main-menu > ul > li > a:hover::after,
.mkdf-main-menu > ul > li.mkdf-active-item > a::after,
.mkdf-main-menu > ul > li.current-menu-item > a::after,
.mkdf-main-menu > ul > li.current-menu-ancestor > a::after {
	transform: scaleX(1);
}

/* Active / current menu item */
.mkdf-main-menu > ul > li.mkdf-active-item > a,
.mkdf-main-menu > ul > li.current-menu-item > a,
.mkdf-main-menu > ul > li.current-menu-ancestor > a {
	color: var(--cpe-accent) !important;
}

/* --- Drop-down sub-menus --- */
.mkdf-drop-down .second .inner > ul,
.mkdf-drop-down .wide .second .inner > ul > li > ul {
	background: var(--cpe-bg-card) !important;
	border: 1px solid var(--cpe-border) !important;
	border-radius: var(--cpe-radius-md) !important;
	box-shadow: var(--cpe-shadow-lg) !important;
	overflow: hidden;
	margin-top: 0 !important;
}

.mkdf-drop-down .second .inner ul li a {
	font-family: var(--cpe-font-sans) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--cpe-text-secondary) !important;
	padding: 10px 20px !important;
	transition: background var(--cpe-transition), color var(--cpe-transition) !important;
}

.mkdf-drop-down .second .inner ul li a:hover {
	background: var(--cpe-accent-light) !important;
	color: var(--cpe-accent) !important;
}

/* --- WhatsApp CTA button (injected via JS) --- */
.cpe-header-cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--cpe-whatsapp) !important;
	color: #fff !important;
	font-family: var(--cpe-font-sans) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	padding: 10px 22px !important;
	border-radius: 50px !important;
	text-decoration: none !important;
	white-space: nowrap;
	transition: background var(--cpe-transition), box-shadow var(--cpe-transition), transform var(--cpe-transition) !important;
	box-shadow: 0 2px 8px rgba(37, 211, 102, .25) !important;
	letter-spacing: 0.01em;
	line-height: 1.4 !important;
}

.cpe-header-cta:hover {
	background: var(--cpe-whatsapp-hover) !important;
	box-shadow: 0 4px 16px rgba(37, 211, 102, .35) !important;
	transform: translateY(-1px);
	color: #fff !important;
}

.cpe-header-cta:active {
	transform: translateY(0);
}

.cpe-header-cta svg {
	width: 18px;
	height: 18px;
	fill: #fff;
	flex-shrink: 0;
}

/* --- Mobile header --- */
.mkdf-mobile-header {
	background: var(--cpe-bg-card) !important;
	box-shadow: var(--cpe-shadow-sm) !important;
}

.mkdf-mobile-header .mkdf-mobile-menu-opener a {
	color: var(--cpe-text-primary) !important;
	transition: color var(--cpe-transition) !important;
}

.mkdf-mobile-header .mkdf-mobile-menu-opener a:hover {
	color: var(--cpe-accent) !important;
}

/* Mobile nav dropdown */
.mkdf-mobile-header .mkdf-mobile-nav {
	background: var(--cpe-bg-card) !important;
	box-shadow: var(--cpe-shadow-lg) !important;
	border-top: 1px solid var(--cpe-border) !important;
}

.mkdf-mobile-header .mkdf-mobile-nav ul li a {
	font-family: var(--cpe-font-sans) !important;
	font-weight: 500 !important;
	color: var(--cpe-text-primary) !important;
	border-bottom: 1px solid var(--cpe-border-light) !important;
	transition: color var(--cpe-transition), background var(--cpe-transition) !important;
}

.mkdf-mobile-header .mkdf-mobile-nav ul li a:hover {
	color: var(--cpe-accent) !important;
	background: var(--cpe-accent-light) !important;
}

/* Mobile sub-menu arrow */
.mkdf-mobile-header .mkdf-mobile-nav .mobile_arrow {
	color: var(--cpe-text-muted) !important;
}

/* Mobile WhatsApp CTA */
.cpe-mobile-cta-wrap {
	padding: 16px 20px;
	border-top: 1px solid var(--cpe-border-light);
}

.cpe-mobile-cta-wrap .cpe-header-cta {
	width: 100%;
	justify-content: center;
	padding: 14px 22px !important;
	font-size: 14px !important;
}

/* --- Sticky header --- */
.mkdf-sticky-header {
	background: var(--cpe-bg-card) !important;
	box-shadow: var(--cpe-shadow-md) !important;
}

.mkdf-sticky-header .mkdf-main-menu > ul > li > a {
	color: var(--cpe-text-primary) !important;
}

.mkdf-sticky-header .mkdf-main-menu > ul > li > a:hover {
	color: var(--cpe-accent) !important;
}

/* --- Desktop: hide on <=1024px --- */
@media only screen and (max-width: 1024px) {
	.mkdf-page-header:not(.mkdf-mobile-header) {
		display: none !important;
	}
}


/* ── Buttons ────────────────────────────────────────────────────── */
.mkdf-btn,
.mkdf-btn.mkdf-btn-solid,
button.wp-booking-button,
input[type="submit"],
.wpforms-submit {
	font-family: var(--cpe-font-sans) !important;
	font-weight: 600 !important;
	letter-spacing: 0.02em !important;
	border-radius: var(--cpe-radius-sm) !important;
	transition: all var(--cpe-transition) !important;
	box-shadow: var(--cpe-shadow-sm) !important;
	text-transform: none !important;
}

.mkdf-btn:hover,
.mkdf-btn.mkdf-btn-solid:hover,
button.wp-booking-button:hover,
input[type="submit"]:hover,
.wpforms-submit:hover {
	box-shadow: var(--cpe-shadow-md) !important;
	transform: translateY(-1px);
}

.mkdf-btn:active,
button.wp-booking-button:active {
	transform: translateY(0);
}

/* WhatsApp booking button */
.whatsapp-booking-button a {
	background: var(--cpe-whatsapp) !important;
	border-radius: var(--cpe-radius-sm) !important;
	font-family: var(--cpe-font-sans) !important;
	font-weight: 600 !important;
	transition: all var(--cpe-transition) !important;
	box-shadow: var(--cpe-shadow-sm) !important;
}

.whatsapp-booking-button a:hover {
	background: var(--cpe-whatsapp-hover) !important;
	box-shadow: var(--cpe-shadow-md) !important;
	transform: translateY(-1px);
}

/* Phone / Email booking buttons */
.phone-booking-button a,
.email-booking-button a {
	border-radius: var(--cpe-radius-sm) !important;
	border: 1px solid var(--cpe-border) !important;
	font-family: var(--cpe-font-sans) !important;
	font-weight: 500 !important;
	transition: all var(--cpe-transition) !important;
}

.phone-booking-button a:hover,
.email-booking-button a:hover {
	border-color: var(--cpe-accent) !important;
	color: var(--cpe-accent) !important;
	background: var(--cpe-accent-light) !important;
}


/* ── Cards & Containers ─────────────────────────────────────────── */

/* Tour cards */
.mkdf-tours-standard-item,
.mkdf-tour-item,
.mkdf-tours-list-item {
	background: var(--cpe-bg-card) !important;
	border-radius: var(--cpe-radius-lg) !important;
	box-shadow: var(--cpe-shadow-md) !important;
	overflow: hidden;
	transition: box-shadow var(--cpe-transition), transform var(--cpe-transition) !important;
}

.mkdf-tours-standard-item:hover,
.mkdf-tour-item:hover,
.mkdf-tours-list-item:hover {
	box-shadow: var(--cpe-shadow-hover) !important;
	transform: translateY(-4px);
}

/* Tour card images */
.mkdf-tours-standard-item .mkdf-item-image,
.mkdf-tour-item .mkdf-item-image {
	border-radius: var(--cpe-radius-lg) var(--cpe-radius-lg) 0 0 !important;
	overflow: hidden;
}

.mkdf-tours-standard-item .mkdf-item-image img,
.mkdf-tour-item .mkdf-item-image img {
	transition: transform var(--cpe-transition-slow) !important;
}

.mkdf-tours-standard-item:hover .mkdf-item-image img,
.mkdf-tour-item:hover .mkdf-item-image img {
	transform: scale(1.04);
}

/* Tour card text area */
.mkdf-tours-standard-item .mkdf-item-text-holder,
.mkdf-tour-item .mkdf-item-text-holder {
	padding: 20px 24px 24px !important;
}

.mkdf-tours-standard-item .mkdf-item-title,
.mkdf-tour-item .mkdf-item-title {
	font-family: var(--cpe-font-sans) !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em !important;
}

/* Tour label badge */
.mkdf-tour-item-label {
	border-radius: var(--cpe-radius-sm) !important;
	font-family: var(--cpe-font-sans) !important;
	font-weight: 600 !important;
	font-size: 12px !important;
	letter-spacing: 0.03em !important;
}

/* Booking form sidebar */
.mkdf-tour-booking-form-holder,
.mkdf-tours-booking-form-holder {
	background: var(--cpe-bg-card) !important;
	border-radius: var(--cpe-radius-lg) !important;
	box-shadow: var(--cpe-shadow-md) !important;
	padding: 24px !important;
}

/* Booking box */
.whatsapp-booking-box,
.whatsapp-booking-box-big {
	border: 1px solid var(--cpe-border) !important;
	border-radius: var(--cpe-radius-md) !important;
	font-family: var(--cpe-font-sans) !important;
	transition: border-color var(--cpe-transition) !important;
}

.whatsapp-booking-box:hover,
.whatsapp-booking-box-big:hover {
	border-color: var(--cpe-whatsapp) !important;
}

.booking-box {
	border: 1px solid var(--cpe-border) !important;
	border-radius: var(--cpe-radius-md) !important;
	background: var(--cpe-bg-subtle) !important;
}

/* Activity boxes (bioluminescence, chacahua, etc.) */
.bioluminescence-box,
.chacahua-box,
.private-boat-box,
.horseback-riding-box,
.oaxacan-cuisine-box,
.whale-dolphin-box,
.sport-fishing-box,
.snorkeling-box,
.bird-watching-box,
.hiking-hot-springs-box,
.dolphin-box,
.turtle-box,
.crocodile-box,
.hot-springs-horseback-box,
.kayak-mangrove-box,
.puerto-box,
.huatulco-box,
.full-tour-box {
	border-radius: var(--cpe-radius-lg) !important;
	box-shadow: var(--cpe-shadow-lg) !important;
	transition: box-shadow var(--cpe-transition), transform var(--cpe-transition) !important;
	overflow: hidden;
}

.bioluminescence-box:hover,
.chacahua-box:hover,
.private-boat-box:hover,
.horseback-riding-box:hover,
.oaxacan-cuisine-box:hover,
.whale-dolphin-box:hover,
.sport-fishing-box:hover,
.snorkeling-box:hover,
.bird-watching-box:hover,
.hiking-hot-springs-box:hover,
.dolphin-box:hover,
.turtle-box:hover,
.crocodile-box:hover,
.hot-springs-horseback-box:hover,
.kayak-mangrove-box:hover,
.puerto-box:hover,
.huatulco-box:hover,
.full-tour-box:hover {
	box-shadow: var(--cpe-shadow-hover) !important;
	transform: translateY(-3px);
}

/* Box shadow utility */
.box-shadow {
	box-shadow: var(--cpe-shadow-md) !important;
	border-radius: var(--cpe-radius-md) !important;
}

/* Blog post cards */
.mkdf-post-block-item,
.mkdf-blog-holder article {
	transition: box-shadow var(--cpe-transition), transform var(--cpe-transition) !important;
}

.mkdf-post-block-item:hover,
.mkdf-blog-holder article:hover {
	box-shadow: var(--cpe-shadow-md) !important;
}

/* Blog post images */
div > div.mkdf-post-heading > div > a > img,
div.mkdf-post-heading > div > img {
	border-radius: var(--cpe-radius-md) !important;
	object-fit: cover;
}


/* ── Forms ──────────────────────────────────────────────────────── */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="password"],
input[type="number"],
input[type="date"],
textarea,
select,
.mkdf-input-field,
#telefono {
	font-family: var(--cpe-font-sans) !important;
	border: 1px solid var(--cpe-border) !important;
	border-radius: var(--cpe-radius-sm) !important;
	background: var(--cpe-bg-card) !important;
	color: var(--cpe-text-primary) !important;
	transition: border-color var(--cpe-transition), box-shadow var(--cpe-transition) !important;
	outline: none !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus,
.mkdf-input-field:focus,
#telefono:focus {
	border-color: var(--cpe-accent) !important;
	box-shadow: 0 0 0 3px var(--cpe-accent-light) !important;
}

form label,
.label-form {
	font-family: var(--cpe-font-sans) !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	color: var(--cpe-text-primary) !important;
}

.form-container {
	border-radius: var(--cpe-radius-lg);
}


/* ── Flatpickr (date picker) ────────────────────────────────────── */
.flatpickr-calendar {
	border-radius: var(--cpe-radius-md) !important;
	box-shadow: var(--cpe-shadow-lg) !important;
	border: 1px solid var(--cpe-border) !important;
	font-family: var(--cpe-font-sans) !important;
}

.flatpickr-day {
	border-radius: var(--cpe-radius-sm) !important;
	font-family: var(--cpe-font-sans) !important;
	transition: background-color var(--cpe-transition), color var(--cpe-transition) !important;
}

.flatpickr-day.selected {
	border-radius: var(--cpe-radius-sm) !important;
}

.flatpickr-current-month .flatpickr-monthDropdown-months,
.flatpickr-current-month input.cur-year {
	font-family: var(--cpe-font-sans) !important;
}


/* ── Testimonials ───────────────────────────────────────────────── */
.mkdf-testimonials-holder {
	font-family: var(--cpe-font-sans);
}

h3.mkdf-testimonial-title {
	font-family: var(--cpe-font-sans) !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em !important;
}

h5.mkdf-testimonial-text {
	font-family: var(--cpe-font-serif) !important;
	font-weight: 400 !important;
	font-style: italic;
	line-height: 1.6 !important;
	color: var(--cpe-text-secondary) !important;
}


/* ── Tour Single Page ───────────────────────────────────────────── */
.mkdf-tour-item-single-holder {
	font-family: var(--cpe-font-sans);
}

/* Tour nav tabs */
.mkdf-single-tour-nav-holder {
	border-bottom: 1px solid var(--cpe-border) !important;
}

.mkdf-tour-nav-item a {
	font-family: var(--cpe-font-sans) !important;
	font-weight: 500 !important;
	transition: color var(--cpe-transition), border-color var(--cpe-transition) !important;
}


/* ── Title Holder ───────────────────────────────────────────────── */
.mkdf-title-holder {
	font-family: var(--cpe-font-sans);
}

.mkdf-title-holder .mkdf-breadcrumbs a,
.mkdf-title-holder .mkdf-breadcrumbs span {
	font-family: var(--cpe-font-sans) !important;
	font-weight: 500 !important;
}

h1.mkdf-page-title {
	font-family: var(--cpe-font-sans) !important;
	font-weight: 800 !important;
	letter-spacing: -0.03em !important;
}


/* ── Footer ─────────────────────────────────────────────────────── */
.mkdf-page-footer {
	font-family: var(--cpe-font-sans) !important;
}

.mkdf-page-footer .mkdf-footer-top-holder {
	font-family: var(--cpe-font-sans);
}

.mkdf-page-footer h4,
.mkdf-page-footer h5,
.mkdf-page-footer .widget-title {
	font-family: var(--cpe-font-sans) !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em !important;
}

.mkdf-page-footer p,
.mkdf-page-footer a,
.mkdf-page-footer li {
	font-family: var(--cpe-font-sans) !important;
}

.mkdf-page-footer a {
	transition: opacity var(--cpe-transition) !important;
}

.mkdf-page-footer a:hover {
	opacity: 0.75;
}


/* ── Sidebar Widgets ────────────────────────────────────────────── */
.mkdf-sidebar .widget {
	font-family: var(--cpe-font-sans);
}

.mkdf-sidebar .widget-title {
	font-family: var(--cpe-font-sans) !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em !important;
}


/* ── Comments ───────────────────────────────────────────────────── */
.mkdf-comment-holder {
	font-family: var(--cpe-font-sans);
}

.mkdf-comment-holder .mkdf-comment-text {
	font-family: var(--cpe-font-sans) !important;
	line-height: 1.6 !important;
	color: var(--cpe-text-secondary) !important;
}


/* ── WhatsApp Float Button ──────────────────────────────────────── */
.whatsapp-float {
	border-radius: var(--cpe-radius-xl) !important;
	box-shadow: var(--cpe-shadow-lg) !important;
	transition: transform var(--cpe-transition), box-shadow var(--cpe-transition) !important;
}

.whatsapp-float:hover {
	transform: scale(1.08);
	box-shadow: var(--cpe-shadow-hover) !important;
}

/* Google review card */
.review-card {
	border-radius: var(--cpe-radius-md) !important;
	box-shadow: var(--cpe-shadow-lg) !important;
	font-family: var(--cpe-font-sans) !important;
	background: rgba(255, 255, 255, 0.95) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.review-link {
	font-family: var(--cpe-font-sans) !important;
}


/* ── Carousel / Owl ─────────────────────────────────────────────── */
.owl-dot span {
	transition: background var(--cpe-transition), transform var(--cpe-transition) !important;
}

.owl-dot.active span {
	transform: scale(1.3);
}

.owl-nav button {
	transition: opacity var(--cpe-transition) !important;
}

.owl-nav button:hover {
	opacity: 0.7 !important;
}


/* ── Language Dropdown ──────────────────────────────────────────── */
.idioma-dropdown-content {
	border-radius: var(--cpe-radius-sm) !important;
	box-shadow: var(--cpe-shadow-lg) !important;
	border: 1px solid var(--cpe-border) !important;
	background: var(--cpe-bg-card) !important;
}

.idioma-dropdown-content a:hover {
	background: var(--cpe-accent-light) !important;
	border-radius: var(--cpe-radius-sm) !important;
}


/* ── Number Input (quantity) ────────────────────────────────────── */
.number-input button {
	border-radius: var(--cpe-radius-sm) !important;
	font-family: var(--cpe-font-sans) !important;
	background-color: var(--cpe-accent) !important;
	transition: background-color var(--cpe-transition) !important;
}

.number-input button:hover {
	background-color: var(--cpe-accent-hover) !important;
}

.number-input input {
	font-family: var(--cpe-font-sans) !important;
	border-radius: var(--cpe-radius-sm) !important;
}


/* ── Utilities / Misc ───────────────────────────────────────────── */

/* Smooth image rendering */
img {
	image-rendering: auto;
}

/* Selection color */
::selection {
	background: var(--cpe-accent-light);
	color: var(--cpe-accent);
}

/* Scrollbar subtle styling (Webkit) */
::-webkit-scrollbar {
	width: 8px;
}

::-webkit-scrollbar-track {
	background: var(--cpe-bg-subtle);
}

::-webkit-scrollbar-thumb {
	background: #c5c5d0;
	border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
	background: #a0a0b0;
}

/* WPForms */
div.wpforms-container-full .wpforms-form .wpforms-field input,
div.wpforms-container-full .wpforms-form .wpforms-field textarea,
div.wpforms-container-full .wpforms-form .wpforms-field select {
	font-family: var(--cpe-font-sans) !important;
	border-radius: var(--cpe-radius-sm) !important;
}

/* VC Grid items – card style */
.vc_grid-item .vc_gitem-zone {
	border-radius: var(--cpe-radius-md) !important;
	overflow: hidden;
	transition: box-shadow var(--cpe-transition), transform var(--cpe-transition) !important;
}

.vc_grid-item:hover .vc_gitem-zone {
	box-shadow: var(--cpe-shadow-md) !important;
}


/* ── Responsive Fine-tuning ─────────────────────────────────────── */
@media only screen and (max-width: 1024px) {
	:root {
		--cpe-radius-lg: 12px;
	}
}

@media only screen and (max-width: 768px) {
	:root {
		--cpe-radius-lg: 10px;
		--cpe-radius-xl: 16px;
	}

	h1.mkdf-page-title {
		letter-spacing: -0.02em !important;
	}

	/* Tighter card padding on mobile */
	.mkdf-tours-standard-item .mkdf-item-text-holder,
	.mkdf-tour-item .mkdf-item-text-holder {
		padding: 16px 18px 20px !important;
	}

	.mkdf-tour-booking-form-holder,
	.mkdf-tours-booking-form-holder {
		border-radius: var(--cpe-radius-md) !important;
		padding: 18px !important;
	}
}
