/*
Theme Name: LOGI-K
Theme URI: https://campercaldas.com
Author: JOHN ARENALES F
Description: Tema personalizado para Camper Caldas - Réplica completa, responsive y optimizada.
Version: 1.0.2
*/

/* ==========================================================================
   1. VARIABLES Y TOKENS DE DISEÑO
   ========================================================================== */
:root {
	--camper-green-light: #CBF2DD;
	--camper-green-mint: #95D5B2;
	--camper-green-default: #3ac17b;
	--camper-green-hover: #2e9e64;
	--camper-green-accent: #61CE70;
	--camper-green-bright: #45CD83;

	--camper-gray-50: #f9fafb;
	--camper-gray-100: #f3f4f6;
	--camper-gray-200: #e5e7eb;
	--camper-gray-300: #d1d5db;
	--camper-gray-600: #4b5563;
	--camper-gray-700: #374151;
	--camper-gray-800: #1f2937;
	--camper-gray-900: #111827;
}

/* ==========================================================================
   2. ESTILOS BASE Y TIPOGRAFÍA
   ========================================================================== */
html {
	scroll-behavior: smooth;
}

body {
	font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
	color: var(--camper-gray-800);
	background-color: #ffffff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin: 0;
	padding: 0;
}

/* ==========================================================================
   3. CABECERA Y NAVEGACIÓN
   ========================================================================== */
.header-bg-mint {
	background-color: rgba(149, 213, 178, 0.75);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.transition-fast {
	transition: all 0.25s ease-in-out;
}

#masthead {
	transition: all 0.3s ease;
}

#masthead .nav-link {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--camper-gray-900);
	transition: color 0.2s ease;
}

#masthead .nav-link:hover {
	color: #059669;
}

/* Menú Drawer Móvil */
#mobileMenuDrawer {
	transition: opacity 0.3s ease;
}

#mobileMenuDrawer .drawer-panel {
	transition: transform 0.3s ease-in-out;
}

/* ==========================================================================
   4. HERO SECTION
   ========================================================================== */
.hero-video-container {
	position: relative;
	min-height: 85vh;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background-color: #111827;
}

.hero-video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: brightness(0.9);
	z-index: 0;
}

.hero-overlay {
	position: absolute;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.45);
	backdrop-filter: brightness(0.95);
	z-index: 10;
}

.hero-btn-cta {
	display: inline-block;
	padding: 1rem 2.5rem;
	background-color: var(--camper-green-default);
	color: #ffffff;
	font-weight: 800;
	font-size: 1.25rem;
	border-radius: 9999px;
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
	transition: all 0.3s ease;
	text-decoration: none;
}

.hero-btn-cta:hover {
	background-color: var(--camper-green-hover);
	transform: scale(1.05);
}

.hero-btn-cta:active {
	transform: scale(0.95);
}

/* ==========================================================================
   5. GALERÍA DE FOTOS (LIGHTBOX Y HOVER)
   ========================================================================== */
.camper-gallery-item {
	position: relative;
	border-radius: 1rem;
	overflow: hidden;
	background-color: #ffffff;
	cursor: pointer;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
	aspect-ratio: 1 / 1;
}

.camper-gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.camper-gallery-item:hover img {
	transform: scale(1.1);
}

.camper-gallery-item .gallery-overlay {
	position: absolute;
	inset: 0;
	background-color: rgba(0, 0, 0, 0);
	transition: background-color 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
}

.camper-gallery-item:hover .gallery-overlay {
	background-color: rgba(0, 0, 0, 0.25);
}

.camper-gallery-item .gallery-icon {
	color: #ffffff;
	font-size: 1.875rem;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.camper-gallery-item:hover .gallery-icon {
	opacity: 1;
}

/* ==========================================================================
   6. TARJETAS DE CARACTERÍSTICAS Y PRECIOS
   ========================================================================== */
.feature-card {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	padding: 1.25rem;
	border-radius: 1rem;
	background-color: var(--camper-gray-50);
	border: 1px solid var(--camper-gray-100);
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.feature-card:hover {
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
	transform: translateY(-2px);
}

.price-card {
	background-color: #ffffff;
	padding: 1.5rem;
	border-radius: 1rem;
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
	border: 1px solid #d1fae5;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
}

.price-card-popular {
	border: 2px solid #34d399;
	box-shadow: 0 0 0 2px #a7f3d0;
}

/* ==========================================================================
   7. SECCIÓN DE RESERVAS Y FORMULARIO
   ========================================================================== */
.reservation-card {
	background-color: #171717;
	color: #ffffff;
	border-radius: 1.5rem;
	padding: 2rem;
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
	position: relative;
	overflow: hidden;
}

.form-input,
.form-select,
.form-textarea {
	width: 100%;
	background-color: #171717;
	border: 1px solid #525252;
	border-radius: 0.75rem;
	padding: 0.625rem 1rem;
	color: #ffffff;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.form-input:focus,
.form-select:focus,
.form-textarea:focus {
	outline: none;
	border-color: #10b981;
	box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.4);
}

.btn-submit-reservation {
	width: 100%;
	padding: 1rem;
	background-color: var(--camper-green-default);
	color: #ffffff;
	font-weight: 900;
	font-size: 1.125rem;
	border-radius: 0.75rem;
	border: none;
	box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.2);
	transition: all 0.2s ease;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
}

.btn-submit-reservation:hover {
	background-color: var(--camper-green-hover);
	transform: translateY(-2px);
}

.btn-submit-reservation:active {
	transform: translateY(0);
}

/* ==========================================================================
   8. PIE DE PÁGINA (FOOTER)
   ========================================================================== */
.camper-footer-bg {
	background: linear-gradient(180deg, #CBF2DD 0%, #FFFFFF 100%);
}

.footer-legal-btn {
	padding: 0.5rem 1.25rem;
	border-radius: 9999px;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--camper-gray-800);
	background-color: rgba(255, 255, 255, 0.7);
	border: 1px solid #a7f3d0;
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
	transition: all 0.2s ease;
	text-decoration: none;
}

.footer-legal-btn:hover {
	background-color: #059669;
	color: #ffffff;
}

/* ==========================================================================
   9. SELECTOR FLOTANTE DE IDIOMA (ESTÁTICO ORIGINAL)
   ========================================================================== */
.trp-language-switcher.trp-floating-switcher {
	position: fixed;
	bottom: 0;
	right: 10vw;
	z-index: 40;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
}

.trp-language-switcher-inner {
	display: inline-block;
}

.trp-language-item {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.5rem 0.75rem;
	background-color: rgba(0, 0, 0, 0.75);
	color: #ffffff;
	font-size: 0.75rem;
	font-weight: 600;
	border-top-left-radius: 0.5rem;
	border-top-right-radius: 0.5rem;
	border-top: 1px solid rgba(20, 56, 82, 0.25);
	border-left: 1px solid rgba(20, 56, 82, 0.25);
	border-right: 1px solid rgba(20, 56, 82, 0.25);
	transition: background-color 0.2s ease, color 0.2s ease;
	cursor: pointer;
	text-decoration: none;
}

.trp-language-item:hover {
	background-color: rgba(0, 0, 0, 0.9);
	color: #00ff88;
}

.trp-flag-image {
	width: 18px;
	height: 14px;
	object-fit: cover;
	border-radius: 2px;
}

/* ==========================================================================
   10. MODAL Y LIGHTBOX
   ========================================================================== */
#camperModalContainer,
#camperLightbox {
	transition: opacity 0.25s ease-in-out;
}

#camperModalContainer.hidden,
#camperLightbox.hidden {
	display: none;
}

/* Scrollbar estilizada para modales */
#camperModalContainer .modal-content-scroll::-webkit-scrollbar {
	width: 6px;
}

#camperModalContainer .modal-content-scroll::-webkit-scrollbar-thumb {
	background-color: #cbd5e1;
	border-radius: 3px;
}

/* ==========================================================================
   11. ESTILOS ELEMENTOR FOOTER (EXTRAÍDOS DE CAMPERCALDAS.HTML - POST 1842)
   ========================================================================== */
.elementor-1842 .elementor-element.elementor-element-c3592e1 {
	--display: grid;
	--e-con-grid-template-columns: 1fr;
	--e-con-grid-template-rows: 1fr 0.2fr;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--grid-auto-flow: row;
	--justify-items: center;
}

.elementor-1842 .elementor-element.elementor-element-c3592e1:not(.elementor-motion-effects-element-type-background),
.elementor-1842 .elementor-element.elementor-element-c3592e1>.elementor-motion-effects-container>.elementor-motion-effects-layer {
	background-color: transparent;
	background-image: linear-gradient(180deg, #CBF2DD 0%, #FFFFFF 100%);
}

.elementor-1842 .elementor-element.elementor-element-0f069ad {
	--display: grid;
	--e-con-grid-template-columns: 0.3fr 0.4fr 0.3fr;
	--e-con-grid-template-rows: repeat(1, 1fr);
	--grid-auto-flow: row;
}

.elementor-1842 .elementor-element.elementor-element-f6410ea {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
}

.elementor-1842 .elementor-element.elementor-element-9a4cc49 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
}

.elementor-widget-icon.elementor-view-stacked .elementor-icon {
	background-color: var(--e-global-color-primary, #111827);
}

.elementor-widget-icon.elementor-view-framed .elementor-icon,
.elementor-widget-icon.elementor-view-default .elementor-icon {
	color: var(--e-global-color-primary, #111827);
	border-color: var(--e-global-color-primary, #111827);
}

.elementor-widget-icon.elementor-view-framed .elementor-icon svg,
.elementor-widget-icon.elementor-view-default .elementor-icon svg {
	fill: var(--e-global-color-primary, #111827);
}

.elementor-1842 .elementor-element.elementor-element-22b1403 {
	width: var(--container-widget-width, 13%);
	max-width: 13%;
	--container-widget-width: 13%;
	--container-widget-flex-grow: 0;
}

.elementor-1842 .elementor-element.elementor-element-22b1403.elementor-element {
	--align-self: center;
}

.elementor-1842 .elementor-element.elementor-element-22b1403 .elementor-icon-wrapper {
	text-align: center;
}

.elementor-1842 .elementor-element.elementor-element-22b1403.elementor-view-stacked .elementor-icon {
	background-color: #000000;
}

.elementor-1842 .elementor-element.elementor-element-22b1403.elementor-view-framed .elementor-icon,
.elementor-1842 .elementor-element.elementor-element-22b1403.elementor-view-default .elementor-icon {
	color: #000000;
	border-color: #000000;
}

.elementor-1842 .elementor-element.elementor-element-22b1403.elementor-view-framed .elementor-icon svg,
.elementor-1842 .elementor-element.elementor-element-22b1403.elementor-view-default .elementor-icon svg {
	fill: #000000;
}

.elementor-1842 .elementor-element.elementor-element-22b1403 .elementor-icon {
	font-size: 30px;
}

.elementor-1842 .elementor-element.elementor-element-22b1403 .elementor-icon svg {
	height: 30px;
}

.elementor-widget-heading .elementor-heading-title {
	font-family: var(--e-global-typography-primary-font-family, "Roboto"), Sans-serif;
	font-weight: var(--e-global-typography-primary-font-weight, 500);
	color: var(--e-global-color-primary, #000000);
}

.elementor-1842 .elementor-element.elementor-element-168e385 {
	width: var(--container-widget-width, 100%);
	max-width: 100%;
	--container-widget-width: 100%;
	--container-widget-flex-grow: 0;
}

.elementor-1842 .elementor-element.elementor-element-168e385.elementor-element {
	--align-self: center;
}

.elementor-1842 .elementor-element.elementor-element-168e385 .elementor-heading-title {
	font-family: "Roboto", Sans-serif;
	font-size: 1.3rem;
	font-weight: 500;
	color: #000000;
}

.elementor-1842 .elementor-element.elementor-element-3d0869f {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
}

.elementor-1842 .elementor-element.elementor-element-0894294 {
	width: var(--container-widget-width, 13%);
	max-width: 13%;
	--container-widget-width: 13%;
	--container-widget-flex-grow: 0;
}

.elementor-1842 .elementor-element.elementor-element-0894294.elementor-element {
	--align-self: center;
}

.elementor-1842 .elementor-element.elementor-element-0894294 .elementor-icon-wrapper {
	text-align: center;
}

.elementor-1842 .elementor-element.elementor-element-0894294.elementor-view-stacked .elementor-icon {
	background-color: #000000;
}

.elementor-1842 .elementor-element.elementor-element-0894294.elementor-view-framed .elementor-icon,
.elementor-1842 .elementor-element.elementor-element-0894294.elementor-view-default .elementor-icon {
	color: #000000;
	border-color: #000000;
}

.elementor-1842 .elementor-element.elementor-element-0894294.elementor-view-framed .elementor-icon svg,
.elementor-1842 .elementor-element.elementor-element-0894294.elementor-view-default .elementor-icon svg {
	fill: #000000;
}

.elementor-1842 .elementor-element.elementor-element-0894294 .elementor-icon {
	font-size: 30px;
}

.elementor-1842 .elementor-element.elementor-element-0894294 .elementor-icon svg {
	height: 30px;
}

.elementor-1842 .elementor-element.elementor-element-cbe305f {
	width: var(--container-widget-width, 100%);
	max-width: 100%;
	--container-widget-width: 100%;
	--container-widget-flex-grow: 0;
}

.elementor-1842 .elementor-element.elementor-element-cbe305f.elementor-element {
	--align-self: center;
}

.elementor-1842 .elementor-element.elementor-element-cbe305f .elementor-heading-title {
	font-family: "Roboto", Sans-serif;
	font-size: 1.3rem;
	font-weight: 500;
	color: #000000;
}

.elementor-1842 .elementor-element.elementor-element-f613be7.elementor-element {
	--align-self: center;
}

.elementor-1842 .elementor-element.elementor-element-f613be7 .elementor-heading-title {
	font-family: "Roboto", Sans-serif;
	font-size: 1.5rem;
	font-weight: 500;
	color: #000000;
}

.elementor-1842 .elementor-element.elementor-element-7fc4f61 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
}

.elementor-1842 .elementor-element.elementor-element-7fc4f61.e-con {
	--align-self: center;
}

.elementor-widget-button .elementor-button {
	background-color: var(--e-global-color-accent, #61CE70);
	font-family: var(--e-global-typography-accent-font-family, "Roboto"), Sans-serif;
	font-weight: var(--e-global-typography-accent-font-weight, 500);
}

.elementor-1842 .elementor-element.elementor-element-d17a18a .elementor-button {
	background-color: #95D5B200;
	font-family: "Roboto", Sans-serif;
	font-size: 1.5rem;
	font-weight: 500;
	fill: #000000;
	color: #000000;
}

.elementor-1842 .elementor-element.elementor-element-d17a18a .elementor-button:hover,
.elementor-1842 .elementor-element.elementor-element-d17a18a .elementor-button:focus {
	color: #45CD83;
}

.elementor-1842 .elementor-element.elementor-element-d17a18a .elementor-button:hover svg,
.elementor-1842 .elementor-element.elementor-element-d17a18a .elementor-button:focus svg {
	fill: #45CD83;
}

.elementor-1842 .elementor-element.elementor-element-3b64dfa .elementor-button {
	background-color: #95D5B200;
	font-family: "Roboto", Sans-serif;
	font-size: 1.5rem;
	font-weight: 500;
	fill: #000000;
	color: #000000;
}

.elementor-1842 .elementor-element.elementor-element-3b64dfa .elementor-button:hover,
.elementor-1842 .elementor-element.elementor-element-3b64dfa .elementor-button:focus {
	color: #45CD83;
}

.elementor-1842 .elementor-element.elementor-element-3b64dfa .elementor-button:hover svg,
.elementor-1842 .elementor-element.elementor-element-3b64dfa .elementor-button:focus svg {
	fill: #45CD83;
}

.elementor-1842 .elementor-element.elementor-element-eafad26 .elementor-button {
	background-color: #95D5B200;
	font-family: "Roboto", Sans-serif;
	font-size: 1.5rem;
	font-weight: 500;
	fill: #000000;
	color: #000000;
}

.elementor-1842 .elementor-element.elementor-element-eafad26 .elementor-button:hover,
.elementor-1842 .elementor-element.elementor-element-eafad26 .elementor-button:focus {
	color: #45CD83;
}

.elementor-1842 .elementor-element.elementor-element-eafad26 .elementor-button:hover svg,
.elementor-1842 .elementor-element.elementor-element-eafad26 .elementor-button:focus svg {
	fill: #45CD83;
}

.elementor-widget-image .widget-image-caption {
	color: var(--e-global-color-text, #1f2937);
	font-family: var(--e-global-typography-text-font-family, "Roboto"), Sans-serif;
	font-weight: var(--e-global-typography-text-font-weight, normal);
}

.elementor-1842 .elementor-element.elementor-element-ed8dcfd {
	margin: 0px 0px calc(var(--kit-widget-spacing, 0px) + 100px) 0px;
}

@media(min-width:768px) {
	.elementor-1842 .elementor-element.elementor-element-f6410ea {
		--width: 100%;
	}
}

@media(max-width:1024px) {
	.elementor-1842 .elementor-element.elementor-element-c3592e1 {
		--grid-auto-flow: row;
		--justify-items: start;
	}

	.elementor-1842 .elementor-element.elementor-element-0f069ad {
		--e-con-grid-template-columns: 0.4fr 0.7fr 0.2fr;
		--grid-auto-flow: row;
	}

	.elementor-1842 .elementor-element.elementor-element-9a4cc49 {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}

	.elementor-1842 .elementor-element.elementor-element-168e385 {
		padding: 6px 6px 6px 6px;
	}

	.elementor-1842 .elementor-element.elementor-element-168e385 .elementor-heading-title {
		font-size: 1rem;
	}

	.elementor-1842 .elementor-element.elementor-element-3d0869f {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}

	.elementor-1842 .elementor-element.elementor-element-cbe305f {
		padding: 6px 6px 6px 6px;
	}

	.elementor-1842 .elementor-element.elementor-element-cbe305f .elementor-heading-title {
		font-size: 1rem;
	}

	.elementor-1842 .elementor-element.elementor-element-f613be7 .elementor-heading-title {
		font-size: 1.1rem;
	}

	.elementor-1842 .elementor-element.elementor-element-7fc4f61 {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}

	.elementor-1842 .elementor-element.elementor-element-d17a18a .elementor-button {
		font-size: 1.1rem;
	}

	.elementor-1842 .elementor-element.elementor-element-3b64dfa .elementor-button {
		font-size: 1.1rem;
	}

	.elementor-1842 .elementor-element.elementor-element-eafad26 .elementor-button {
		font-size: 1.1rem;
	}
}

@media(max-width:767px) {
	.elementor-1842 .elementor-element.elementor-element-c3592e1 {
		--e-con-grid-template-columns: 1;
		--e-con-grid-template-rows: 1;
		--grid-auto-flow: row;
		--grid-justify-content: center;
	}

	.elementor-1842 .elementor-element.elementor-element-0f069ad {
		--width: 100%;
		--e-con-grid-template-columns: 1;
		--grid-auto-flow: row;
		--grid-justify-content: center;
	}

	.elementor-1842 .elementor-element.elementor-element-f6410ea {
		--align-items: center;
		--container-widget-width: calc((1 - var(--container-widget-flex-grow)) * 100%);
	}

	.elementor-1842 .elementor-element.elementor-element-9a4cc49 {
		--width: 50%;
		--align-items: center;
		--container-widget-width: calc((1 - var(--container-widget-flex-grow)) * 100%);
	}

	.elementor-1842 .elementor-element.elementor-element-168e385 {
		--container-widget-width: 31%;
		--container-widget-flex-grow: 0;
		width: var(--container-widget-width, 31%);
		max-width: 31%;
	}

	.elementor-1842 .elementor-element.elementor-element-cbe305f {
		--container-widget-width: 77%;
		--container-widget-flex-grow: 0;
		width: var(--container-widget-width, 77%);
		max-width: 77%;
	}

	.elementor-1842 .elementor-element.elementor-element-7fc4f61 {
		--flex-direction: column;
		--container-widget-width: calc((1 - var(--container-widget-flex-grow)) * 100%);
		--container-widget-height: initial;
		--container-widget-flex-grow: 0;
		--container-widget-align-self: initial;
		--flex-wrap-mobile: wrap;
		--align-items: center;
		--margin-top: 20px;
		--margin-bottom: 0px;
		--margin-left: 0px;
		--margin-right: 0px;
	}
}

/* ==========================================================================
   12. ESTILOS ELEMENTOR HEADER COMPLETO (EXTRAÍDOS DE CAMPERCALDAS.HTML - POST 1815)
   ========================================================================== */
.elementor-1815 .elementor-element.elementor-element-98ceebc {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
}

.elementor-1815 .elementor-element.elementor-element-98ceebc:not(.elementor-motion-effects-element-type-background),
.elementor-1815 .elementor-element.elementor-element-98ceebc>.elementor-motion-effects-container>.elementor-motion-effects-layer {
	background-color: #95D5B2A6;
}

.elementor-widget-image .widget-image-caption {
	color: var(--e-global-color-text);
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-weight: var(--e-global-typography-text-font-weight);
}

.elementor-1815 .elementor-element.elementor-element-be11677 {
	width: var(--container-widget-width, 8%);
	max-width: 8%;
	--container-widget-width: 8%;
	--container-widget-flex-grow: 0;
	text-align: start;
}

.elementor-1815 .elementor-element.elementor-element-be11677 img {
	width: 100%;
}

.elementor-1815 .elementor-element.elementor-element-1c794d1 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--margin-top: 0%;
	--margin-bottom: 0%;
	--margin-left: 0%;
	--margin-right: 3%;
}

.elementor-1815 .elementor-element.elementor-element-1c794d1.e-con {
	--align-self: center;
}

.elementor-widget-navigation-menu .menu-item a.hfe-menu-item.elementor-button {
	background-color: var(--e-global-color-accent);
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-weight: var(--e-global-typography-accent-font-weight);
}

.elementor-widget-navigation-menu .menu-item a.hfe-menu-item.elementor-button:hover {
	background-color: var(--e-global-color-accent);
}

.elementor-widget-navigation-menu a.hfe-menu-item,
.elementor-widget-navigation-menu a.hfe-sub-menu-item {
	font-family: var(--e-global-typography-primary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-primary-font-weight);
}

.elementor-widget-navigation-menu .menu-item a.hfe-menu-item,
.elementor-widget-navigation-menu .sub-menu a.hfe-sub-menu-item {
	color: var(--e-global-color-text);
}

.elementor-widget-navigation-menu .menu-item a.hfe-menu-item:hover,
.elementor-widget-navigation-menu .sub-menu a.hfe-sub-menu-item:hover,
.elementor-widget-navigation-menu .menu-item.current-menu-item a.hfe-menu-item,
.elementor-widget-navigation-menu .menu-item a.hfe-menu-item.highlighted,
.elementor-widget-navigation-menu .menu-item a.hfe-menu-item:focus {
	color: var(--e-global-color-accent);
}

.elementor-widget-navigation-menu .hfe-nav-menu-layout:not(.hfe-pointer__framed) .menu-item.parent a.hfe-menu-item:before,
.elementor-widget-navigation-menu .hfe-nav-menu-layout:not(.hfe-pointer__framed) .menu-item.parent a.hfe-menu-item:after {
	background-color: var(--e-global-color-accent);
}

.elementor-widget-navigation-menu .hfe-nav-menu-layout:not(.hfe-pointer__framed) .menu-item.parent .sub-menu .hfe-has-submenu-container a:after {
	background-color: var(--e-global-color-accent);
}

.elementor-widget-navigation-menu .hfe-pointer__framed .menu-item.parent a.hfe-menu-item:before,
.elementor-widget-navigation-menu .hfe-pointer__framed .menu-item.parent a.hfe-menu-item:after {
	border-color: var(--e-global-color-accent);
}

.elementor-widget-navigation-menu .sub-menu li a.hfe-sub-menu-item,
.elementor-widget-navigation-menu nav.hfe-dropdown li a.hfe-sub-menu-item,
.elementor-widget-navigation-menu nav.hfe-dropdown li a.hfe-menu-item,
.elementor-widget-navigation-menu nav.hfe-dropdown-expandible li a.hfe-menu-item,
.elementor-widget-navigation-menu nav.hfe-dropdown-expandible li a.hfe-sub-menu-item {
	font-family: var(--e-global-typography-accent-font-family), Sans-serif;
	font-weight: var(--e-global-typography-accent-font-weight);
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__toggle,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu-icon {
	margin-left: auto;
	margin-right: 0;
	justify-content: flex-end;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 li.menu-item a {
	justify-content: flex-end;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 li.hfe-button-wrapper {
	text-align: flex-end;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6.hfe-menu-item-flex-end li.hfe-button-wrapper {
	text-align: right;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-flyout-wrapper .hfe-side {
	width: 300px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-flyout-open.left {
	left: -300px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-flyout-open.right {
	right: -300px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-flyout-content {
	padding: 30px;
	background-color: #0000007A;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item a.hfe-menu-item {
	padding-left: 24px;
	padding-right: 24px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item a.hfe-sub-menu-item {
	padding-left: calc(24px + 20px);
	padding-right: 24px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-vertical .menu-item ul ul a.hfe-sub-menu-item {
	padding-left: calc(24px + 40px);
	padding-right: 24px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-vertical .menu-item ul ul ul a.hfe-sub-menu-item {
	padding-left: calc(24px + 60px);
	padding-right: 24px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-vertical .menu-item ul ul ul ul a.hfe-sub-menu-item {
	padding-left: calc(24px + 80px);
	padding-right: 24px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item a.hfe-sub-menu-item {
	padding-top: 1px;
	padding-bottom: 1px;
}

body:not(.rtl) .elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
	margin-right: 12px;
}

body.rtl .elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
	margin-left: 12px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav:not(.hfe-nav-menu__layout-horizontal) .hfe-nav-menu>li.menu-item:not(:last-child) {
	margin-bottom: 12px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .sub-menu a.hfe-sub-menu-item,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-dropdown li a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-dropdown li a.hfe-sub-menu-item,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-dropdown-expandible li a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-dropdown-expandible li a.hfe-sub-menu-item {
	padding-top: 15px;
	padding-bottom: 15px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 {
	width: var(--container-widget-width, 0%);
	max-width: 0%;
	--container-widget-width: 0%;
	--container-widget-flex-grow: 0;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6.elementor-element {
	--align-self: flex-end;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 a.hfe-sub-menu-item {
	font-family: "Roboto", Sans-serif;
	font-size: 1.7rem;
	font-weight: 600;
	text-decoration: none;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .sub-menu a.hfe-sub-menu-item {
	color: #FFFFFF;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item.current-menu-item a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item.current-menu-ancestor a.hfe-menu-item {
	color: var(--e-global-color-accent);
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .sub-menu,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-dropdown,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-dropdown-expandible,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-dropdown .menu-item a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-dropdown .menu-item a.hfe-sub-menu-item {
	background-color: #080808;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .sub-menu li.menu-item:not(:last-child),
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-dropdown li.menu-item:not(:last-child),
.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-dropdown-expandible li.menu-item:not(:last-child) {
	border-bottom-style: solid;
	border-bottom-color: #c4c4c4;
	border-bottom-width: 1px;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-flyout-close {
	color: #7A7A7A;
}

.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-flyout-close svg {
	fill: #7A7A7A;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item a.hfe-menu-item {
	padding-left: 3px;
	padding-right: 3px;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item a.hfe-sub-menu-item {
	padding-left: calc(3px + 20px);
	padding-right: 3px;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .hfe-nav-menu__layout-vertical .menu-item ul ul a.hfe-sub-menu-item {
	padding-left: calc(3px + 40px);
	padding-right: 3px;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .hfe-nav-menu__layout-vertical .menu-item ul ul ul a.hfe-sub-menu-item {
	padding-left: calc(3px + 60px);
	padding-right: 3px;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .hfe-nav-menu__layout-vertical .menu-item ul ul ul ul a.hfe-sub-menu-item {
	padding-left: calc(3px + 80px);
	padding-right: 3px;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item a.hfe-sub-menu-item {
	padding-top: 10px;
	padding-bottom: 10px;
}

body:not(.rtl) .elementor-1815 .elementor-element.elementor-element-1391dd9 .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
	margin-right: 56px;
}

body.rtl .elementor-1815 .elementor-element.elementor-element-1391dd9 .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
	margin-left: 56px;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 nav:not(.hfe-nav-menu__layout-horizontal) .hfe-nav-menu>li.menu-item:not(:last-child) {
	margin-bottom: 56px;
}

body:not(.rtl) .elementor-1815 .elementor-element.elementor-element-1391dd9 .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item {
	margin-bottom: 0px;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 ul.sub-menu {
	width: 220px;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .sub-menu a.hfe-sub-menu-item,
.elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-dropdown li a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-dropdown li a.hfe-sub-menu-item,
.elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-dropdown-expandible li a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-dropdown-expandible li a.hfe-sub-menu-item {
	padding-top: 15px;
	padding-bottom: 15px;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 {
	width: var(--container-widget-width, 100%);
	max-width: 100%;
	--container-widget-width: 100%;
	--container-widget-flex-grow: 0;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9>.elementor-widget-container {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .hfe-nav-menu__toggle {
	margin-left: auto;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-1391dd9 a.hfe-sub-menu-item {
	font-family: "Roboto", Sans-serif;
	font-size: 1.5rem;
	font-weight: 600;
	text-decoration: none;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-1391dd9 .sub-menu a.hfe-sub-menu-item {
	color: #000000;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item a.hfe-menu-item:hover,
.elementor-1815 .elementor-element.elementor-element-1391dd9 .sub-menu a.hfe-sub-menu-item:hover,
.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item.current-menu-item a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item a.hfe-menu-item.highlighted,
.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item a.hfe-menu-item:focus {
	color: #61CE70;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item.current-menu-item a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-1391dd9 .menu-item.current-menu-ancestor a.hfe-menu-item {
	color: var(--e-global-color-accent);
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .sub-menu,
.elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-dropdown,
.elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-dropdown-expandible,
.elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-dropdown .menu-item a.hfe-menu-item,
.elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-dropdown .menu-item a.hfe-sub-menu-item {
	background-color: #fff;
}

.elementor-1815 .elementor-element.elementor-element-1391dd9 .sub-menu li.menu-item:not(:last-child),
.elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-dropdown li.menu-item:not(:last-child),
.elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-dropdown-expandible li.menu-item:not(:last-child) {
	border-bottom-style: solid;
	border-bottom-color: #c4c4c4;
	border-bottom-width: 1px;
}

@media(max-width:1024px) {

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__toggle,
	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu-icon {
		margin-left: auto;
		margin-right: 0;
		justify-content: flex-end;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 li.menu-item a {
		justify-content: flex-end;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 li.hfe-button-wrapper {
		text-align: flex-end;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6.hfe-menu-item-flex-end li.hfe-button-wrapper {
		text-align: right;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item a.hfe-menu-item,
	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item a.hfe-sub-menu-item {
		padding-top: 12px;
		padding-bottom: 12px;
	}

	body:not(.rtl) .elementor-1815 .elementor-element.elementor-element-a6c6dc6.hfe-nav-menu__breakpoint-tablet .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-right: 0px;
	}

	body .elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-nav-menu__layout-vertical .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-bottom: 0px;
	}

	body:not(.rtl) .elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-right: 13px;
	}

	body.rtl .elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-left: 13px;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav:not(.hfe-nav-menu__layout-horizontal) .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-bottom: 13px;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6.elementor-element {
		--align-self: flex-end;
	}

	body:not(.rtl) .elementor-1815 .elementor-element.elementor-element-1391dd9.hfe-nav-menu__breakpoint-tablet .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-right: 0px;
	}

	body .elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-nav-menu__layout-vertical .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-bottom: 0px;
	}
}

@media(min-width:768px) {
	.elementor-1815 .elementor-element.elementor-element-98ceebc {
		--width: 100%;
	}

	.elementor-1815 .elementor-element.elementor-element-1c794d1 {
		--width: 98%;
	}
}

@media(max-width:1024px) and (min-width:768px) {
	.elementor-1815 .elementor-element.elementor-element-98ceebc {
		--width: 100%;
	}
}

@media(max-width:767px) {
	.elementor-1815 .elementor-element.elementor-element-98ceebc {
		--flex-direction: row;
		--container-widget-width: initial;
		--container-widget-height: 100%;
		--container-widget-flex-grow: 1;
		--container-widget-align-self: stretch;
		--flex-wrap-mobile: wrap;
	}

	.elementor-1815 .elementor-element.elementor-element-be11677 {
		padding: 19px 19px 19px 19px;
		--container-widget-width: 46%;
		--container-widget-flex-grow: 0;
		width: var(--container-widget-width, 46%);
		max-width: 46%;
		text-align: start;
	}

	.elementor-1815 .elementor-element.elementor-element-be11677.elementor-element {
		--align-self: flex-start;
	}

	.elementor-1815 .elementor-element.elementor-element-be11677 img {
		width: 66%;
	}

	.elementor-1815 .elementor-element.elementor-element-1c794d1 {
		--width: 100%;
		--flex-direction: row-reverse;
		--container-widget-width: calc((1 - var(--container-widget-flex-grow)) * 100%);
		--container-widget-height: 100%;
		--container-widget-flex-grow: 1;
		--container-widget-align-self: stretch;
		--flex-wrap-mobile: wrap-reverse;
		--align-items: center;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-flyout-content {
		padding: 29px;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item a.hfe-menu-item {
		padding-left: 0px;
		padding-right: 0px;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .menu-item a.hfe-sub-menu-item {
		padding-left: calc(0px + 20px);
		padding-right: 0px;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-vertical .menu-item ul ul a.hfe-sub-menu-item {
		padding-left: calc(0px + 40px);
		padding-right: 0px;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-vertical .menu-item ul ul ul a.hfe-sub-menu-item {
		padding-left: calc(0px + 60px);
		padding-right: 0px;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-vertical .menu-item ul ul ul ul a.hfe-sub-menu-item {
		padding-left: calc(0px + 80px);
		padding-right: 0px;
	}

	body:not(.rtl) .elementor-1815 .elementor-element.elementor-element-a6c6dc6.hfe-nav-menu__breakpoint-mobile .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-right: 0px;
	}

	body .elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav.hfe-nav-menu__layout-vertical .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-bottom: 0px;
	}

	body:not(.rtl) .elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-right: 7px;
	}

	body.rtl .elementor-1815 .elementor-element.elementor-element-a6c6dc6 .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-left: 7px;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 nav:not(.hfe-nav-menu__layout-horizontal) .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-bottom: 7px;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6>.elementor-widget-container {
		margin: 0px 0px 0px 0px;
		padding: 8px 8px 8px 8px;
	}

	.elementor-1815 .elementor-element.elementor-element-a6c6dc6 {
		--container-widget-width: 100%;
		--container-widget-flex-grow: 0;
		width: var(--container-widget-width, 100%);
		max-width: 100%;
	}

	body:not(.rtl) .elementor-1815 .elementor-element.elementor-element-1391dd9.hfe-nav-menu__breakpoint-mobile .hfe-nav-menu__layout-horizontal .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-right: 0px;
	}

	body .elementor-1815 .elementor-element.elementor-element-1391dd9 nav.hfe-nav-menu__layout-vertical .hfe-nav-menu>li.menu-item:not(:last-child) {
		margin-bottom: 0px;
	}

	.elementor-1815 .elementor-element.elementor-element-1391dd9 {
		--container-widget-width: 0%;
		--container-widget-flex-grow: 0;
		width: var(--container-widget-width, 0%);
		max-width: 0%;
	}
}

/* ==========================================================================
   13. ESTILOS BOOKING APPOINTMENT & RESOURCE SELECTOR THEME VARIABLES
   ========================================================================== */
.wpbc_booking_ui_theme_scope,
.wpbc_booking_appointment__loading,
.wpbc_booking_resource_selector .wpbc_booking_ui_theme_scope,
.wpbc_booking_resource_selector__loading {
	--wpbc_form-button-border-radius: 3px;
	--wpbc_form-button-border-style: none;
	--wpbc_form-button-border-size: 1px;
	--wpbc_form-button-primary-border-style: none;
	--wpbc_form-button-light-border-style: solid;
	--wpbc_form-button-light-border-size: 1px;
	--wpbc-bfb-form-background: #ffffff;
	--wpbc-bfb-form-border-color: #cccccc;
	--wpbc-bfb-form-border-width: 1px;
	--wpbc-bfb-form-border-radius: 2px;
	--wpbc-bfb-form-padding: 10px 30px;
	--wpbc-bfb-form-box-shadow: rgba(0, 0, 0, 0.05) 0px 2px 6px 0px;
	--wpbc_form-label-color: rgba(0, 0, 0, 0.85);
	--wpbc_form-label-sublabel-color: rgba(0, 0, 0, 0.55);
	--wpbc_form-label-error-color: #d63637;
	--wpbc_form-field-background-color: #ffffff;
	--wpbc_form-field-border-color: rgba(0, 0, 0, 0.25);
	--wpbc_form-field-focus-border-color: #066aab;
	--wpbc_form-field-focus-shadow-color: #066aab;
	--wpbc_form-field-text-color: rgba(0, 0, 0, 0.7);
	--wpbc_form-button-background-color: #066aab;
	--wpbc_form-button-background-color-alt: #066aab;
	--wpbc_form-button-border-color: #066aab;
	--wpbc_form-button-text-color: #ffffff;
	--wpbc_form-choice-checked-border-color: #066aab;
	--wpbc_form-choice-focus-color: #066aab;
	--wpbc_form-button-light-background-color: #fdfdfd;
	--wpbc_form-button-light-border-color: #cacacab5;
	--wpbc_form-button-light-text-color: #444444e0;
	--wpbc_form-button-light-box-shadow: 0 2px 10px 2px #ffffff54;
	--wpbc_form-button-light-hover-background-color: #fdfdfd;
	--wpbc_form-button-light-hover-border-color: rgb(77, 145, 205);
	--wpbc_form-button-light-hover-text-color: #444444e0;
	--wpbc_form-button-light-hover-box-shadow: 0 2px 10px 2px #ffffff54;
	--wpbc_form-button-primary-hover-border-color: #ffffff;
}

/* ==========================================================================
   14. ESTILOS BOOKING CALENDAR & LAYOUT (EXTRAÍDOS DE CAMPERCALDAS.HTML)
   ========================================================================== */
.wpbc_r_calendar_container {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 40px;
	width: 100%;
	margin-bottom: 20px;
}

.wpbc_calendar_column {
	display: flex;
	justify-content: center;
	flex: 0 1 auto;
}

.wpbc_legend_column {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	min-width: 180px;
}

.wpbc_booking_form_simple {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.wpbc__form__div {
	width: 100%;
	max-width: 600px;
}

.wpbc_r_submit {
	display: flex !important;
	justify-content: flex-end !important;
	margin-top: 15px;
}

.wpbc_r_submit .btn {
	background-color: #2e8b57;
	color: #fff;
	border: none;
	padding: 10px 24px;
	border-radius: 6px;
	font-weight: 600;
	cursor: pointer;
	transition: background-color 0.25s ease-in-out;
}

.wpbc_r_submit .btn:hover {
	background-color: #256b45;
}

@media (max-width: 768px) {
	.wpbc_r_calendar_container {
		width: 100%;
	}

	.wpbc_calendar_column {
		justify-content: center !important;
		width: 60%;
	}

	.block_hints {
		justify-content: center !important;
	}

	.wpbc_r_submit {
		justify-content: center !important;
	}
}

.hfe-site-header,
.elementor-location-header {
	position: relative;
	z-index: 9999;
}

.hfe-menu-item:hover {
	color: #61CE70 !important;
}

/* ==========================================================================
   15. ESTILOS CONTACT FORM 7 (EXTRAÍDOS DE CAMPERCALDAS.HTML)
   ========================================================================== */
.wpcf7 form {
	background: #000000A1;
	padding: 40px;
	border-radius: 30px;
	max-width: 600px;
	margin: 40px auto;
	color: white;
	font-family: Arial, sans-serif;
	text-align: left;
}

.wpcf7 form h2 {
	text-align: left;
	color: white;
	font-weight: bold;
	margin-bottom: 20px;
}

.wpcf7 label {
	display: block;
	margin-top: 15px;
	font-weight: bold;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 textarea {
	width: 100%;
	padding: 10px 15px;
	border-radius: 20px;
	border: 1px solid #ccc;
	box-sizing: border-box;
	margin-top: 5px;
}

.wpcf7 textarea {
	width: 100%;
	padding: 10px 15px;
	border-radius: 20px;
	border: 1px solid #ccc;
	box-sizing: border-box;
	margin-top: 5px;
	min-height: 120px;
	resize: vertical;
}

.wpcf7 .wpcf7-submit {
	display: block;
	margin-left: auto;
	background-color: #3ac17b;
	color: white;
	border: none;
	border-radius: 8px;
	padding: 10px 30px;
	margin-top: 20px;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.wpcf7 .wpcf7-submit:hover {
	background-color: #2e9e64;
}

@media (max-width: 768px) {
	.wpcf7 form {
		padding: 25px;
		max-width: 90%;
		border-radius: 20px;
		margin: 20px auto;
	}

	.wpcf7 form h2 {
		font-size: 1.3rem;
	}

	.wpcf7 input[type="text"],
	.wpcf7 input[type="email"],
	.wpcf7 input[type="tel"],
	.wpcf7 textarea {
		padding: 8px 12px;
		font-size: 0.95rem;
	}

	.wpcf7 .wpcf7-submit {
		padding: 8px 25px;
		font-size: 0.95rem;
	}
}

@media (max-width: 480px) {
	.wpcf7 form {
		padding: 20px;
		max-width: 95%;
		border-radius: 15px;
		margin: 15px auto;
	}

	.wpcf7 form h2 {
		font-size: 1.1rem;
		text-align: center;
	}

	.wpcf7 label {
		font-size: 0.9rem;
	}

	.wpcf7 input[type="text"],
	.wpcf7 input[type="email"],
	.wpcf7 input[type="tel"],
	.wpcf7 textarea {
		padding: 8px 5px;
		font-size: 0.9rem;
		border-radius: 15px;
	}

	.wpcf7 textarea {
		height: 10px;
		padding: 6px 5px;
	}

	.wpcf7 .wpcf7-submit {
		width: 100%;
		padding: 10px;
		font-size: 0.9rem;
	}
}

/* ==========================================================================
   16. ESTILOS SKIP-LINK Y LAZYLOAD ELEMENTOR
   ========================================================================== */
.hfe-skip-link {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.hfe-skip-link:focus {
	position: fixed;
	top: 0;
	inset-inline-start: 0;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0.75em 1.5em;
	overflow: visible;
	clip: auto;
	clip-path: none;
	white-space: normal;
	z-index: 100000;
	background: #fff;
	color: #0073aa;
	font-size: 14px;
	text-decoration: underline;
	border-radius: 0 0 3px 0;
	outline: 2px solid #0073aa;
	outline-offset: -2px;
}

.e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload),
.e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload) * {
	background-image: none !important;
}

@media screen and (max-height: 1024px) {

	.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload),
	.e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload) * {
		background-image: none !important;
	}
}

@media screen and (max-height: 640px) {

	.e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload),
	.e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload) * {
		background-image: none !important;
	}
}

/* ==========================================================================
   17. ESTILOS AUTO-SIZES Y WP EMOJI
   ========================================================================== */
img:is([sizes=auto i], [sizes^="auto," i]) {
	contain-intrinsic-size: 3000px 1500px;
}

img.wp-smiley,
img.emoji {
	display: inline !important;
	border: none !important;
	box-shadow: none !important;
	height: 1em !important;
	width: 1em !important;
	margin: 0 0.07em !important;
	vertical-align: -0.1em !important;
	background: none !important;
	padding: 0 !important;
}

/* ==========================================================================
   18. PRESETS Y ESTILOS GLOBALES WORDPRESS (EXTRAÍDOS DE CAMPERCALDAS.HTML)
   ========================================================================== */
:root {
	--wp--preset--aspect-ratio--square: 1;
	--wp--preset--aspect-ratio--4-3: 4/3;
	--wp--preset--aspect-ratio--3-4: 3/4;
	--wp--preset--aspect-ratio--3-2: 3/2;
	--wp--preset--aspect-ratio--2-3: 2/3;
	--wp--preset--aspect-ratio--16-9: 16/9;
	--wp--preset--aspect-ratio--9-16: 9/16;
	--wp--preset--color--black: #000000;
	--wp--preset--color--cyan-bluish-gray: #abb8c3;
	--wp--preset--color--white: #ffffff;
	--wp--preset--color--pale-pink: #f78da7;
	--wp--preset--color--vivid-red: #cf2e2e;
	--wp--preset--color--luminous-vivid-orange: #ff6900;
	--wp--preset--color--luminous-vivid-amber: #fcb900;
	--wp--preset--color--light-green-cyan: #7bdcb5;
	--wp--preset--color--vivid-green-cyan: #00d084;
	--wp--preset--color--pale-cyan-blue: #8ed1fc;
	--wp--preset--color--vivid-cyan-blue: #0693e3;
	--wp--preset--color--vivid-purple: #9b51e0;
	--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg, rgb(6, 147, 227) 0%, rgb(155, 81, 224) 100%);
	--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg, rgb(122, 220, 180) 0%, rgb(0, 208, 130) 100%);
	--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg, rgb(252, 185, 0) 0%, rgb(255, 105, 0) 100%);
	--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg, rgb(255, 105, 0) 0%, rgb(207, 46, 46) 100%);
	--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg, rgb(238, 238, 238) 0%, rgb(169, 184, 195) 100%);
	--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg, rgb(74, 234, 220) 0%, rgb(151, 120, 209) 20%, rgb(207, 42, 186) 40%, rgb(238, 44, 130) 60%, rgb(251, 105, 98) 80%, rgb(254, 248, 76) 100%);
	--wp--preset--gradient--blush-light-purple: linear-gradient(135deg, rgb(255, 206, 236) 0%, rgb(152, 150, 240) 100%);
	--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg, rgb(254, 205, 165) 0%, rgb(254, 45, 45) 50%, rgb(107, 0, 62) 100%);
	--wp--preset--gradient--luminous-dusk: linear-gradient(135deg, rgb(255, 203, 112) 0%, rgb(199, 81, 192) 50%, rgb(65, 88, 208) 100%);
	--wp--preset--gradient--pale-ocean: linear-gradient(135deg, rgb(255, 245, 203) 0%, rgb(182, 227, 212) 50%, rgb(51, 167, 181) 100%);
	--wp--preset--gradient--electric-grass: linear-gradient(135deg, rgb(202, 248, 128) 0%, rgb(113, 206, 126) 100%);
	--wp--preset--gradient--midnight: linear-gradient(135deg, rgb(2, 3, 129) 0%, rgb(40, 116, 252) 100%);
	--wp--preset--font-size--small: 13px;
	--wp--preset--font-size--medium: 20px;
	--wp--preset--font-size--large: 36px;
	--wp--preset--font-size--x-large: 42px;
	--wp--preset--spacing--20: 0.44rem;
	--wp--preset--spacing--30: 0.67rem;
	--wp--preset--spacing--40: 1rem;
	--wp--preset--spacing--50: 1.5rem;
	--wp--preset--spacing--60: 2.25rem;
	--wp--preset--spacing--70: 3.38rem;
	--wp--preset--spacing--80: 5.06rem;
	--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);
	--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);
	--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);
	--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);
	--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);
	--wp--style--global--content-size: 800px;
	--wp--style--global--wide-size: 1200px;
	--wp--style--block-gap: 24px;
}

.wp-block-button {
	--wp--preset--dimension--25: 25%;
	--wp--preset--dimension--50: 50%;
	--wp--preset--dimension--75: 75%;
	--wp--preset--dimension--100: 100%;
}

:where(body) {
	margin: 0;
}

.wp-site-blocks>.alignleft {
	float: left;
	margin-right: 2em;
}

.wp-site-blocks>.alignright {
	float: right;
	margin-left: 2em;
}

.wp-site-blocks>.aligncenter {
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
}

:where(.wp-site-blocks)>* {
	margin-block-start: 24px;
	margin-block-end: 0;
}

:where(.wp-site-blocks)> :first-child {
	margin-block-start: 0;
}

:where(.wp-site-blocks)> :last-child {
	margin-block-end: 0;
}

:root :where(.is-layout-flow)> :first-child,
:root :where(.is-layout-constrained)> :first-child {
	margin-block-start: 0;
}

:root :where(.is-layout-flow)> :last-child,
:root :where(.is-layout-constrained)> :last-child {
	margin-block-end: 0;
}

:root :where(.is-layout-flow)>*,
:root :where(.is-layout-constrained)>* {
	margin-block-start: 24px;
	margin-block-end: 0;
}

:root :where(.is-layout-flex),
:root :where(.is-layout-grid) {
	gap: 24px;
}

.is-layout-flow>.alignleft,
.is-layout-constrained>.alignleft {
	float: left;
	margin-inline-start: 0;
	margin-inline-end: 2em;
}

.is-layout-flow>.alignright,
.is-layout-constrained>.alignright {
	float: right;
	margin-inline-start: 2em;
	margin-inline-end: 0;
}

.is-layout-flow>.aligncenter,
.is-layout-constrained>.aligncenter {
	margin-left: auto !important;
	margin-right: auto !important;
}

.is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: var(--wp--style--global--content-size);
	margin-left: auto !important;
	margin-right: auto !important;
}

.is-layout-constrained>.alignwide {
	max-width: var(--wp--style--global--wide-size);
}

body .is-layout-flex {
	display: flex;
}

.is-layout-flex {
	flex-wrap: wrap;
	align-items: center;
}

.is-layout-flex> :is(*, div) {
	margin: 0;
}

body .is-layout-grid {
	display: grid;
}

.is-layout-grid> :is(*, div) {
	margin: 0;
}

:root :where(.wp-element-button, .wp-block-button__link) {
	background-color: #32373c;
	border-width: 0;
	color: #fff;
	font-family: inherit;
	font-size: inherit;
	font-style: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	line-height: inherit;
	padding-top: calc(0.667em + 2px);
	padding-right: calc(1.333em + 2px);
	padding-bottom: calc(0.667em + 2px);
	padding-left: calc(1.333em + 2px);
	text-decoration: none;
	text-transform: inherit;
}

.has-black-color {
	color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-color {
	color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-color {
	color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-color {
	color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-color {
	color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-color {
	color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-color {
	color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-color {
	color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-color {
	color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-color {
	color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-color {
	color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-color {
	color: var(--wp--preset--color--vivid-purple) !important;
}

.has-black-background-color {
	background-color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-background-color {
	background-color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-background-color {
	background-color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-background-color {
	background-color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-background-color {
	background-color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-background-color {
	background-color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-background-color {
	background-color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-background-color {
	background-color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-background-color {
	background-color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-background-color {
	background-color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-background-color {
	background-color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-background-color {
	background-color: var(--wp--preset--color--vivid-purple) !important;
}

.has-black-border-color {
	border-color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-border-color {
	border-color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-border-color {
	border-color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-border-color {
	border-color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-border-color {
	border-color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-border-color {
	border-color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-border-color {
	border-color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-border-color {
	border-color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-border-color {
	border-color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-border-color {
	border-color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-border-color {
	border-color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-border-color {
	border-color: var(--wp--preset--color--vivid-purple) !important;
}

.has-vivid-cyan-blue-to-vivid-purple-gradient-background {
	background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;
}

.has-light-green-cyan-to-vivid-green-cyan-gradient-background {
	background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;
}

.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background {
	background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;
}

.has-luminous-vivid-orange-to-vivid-red-gradient-background {
	background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;
}

.has-very-light-gray-to-cyan-bluish-gray-gradient-background {
	background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;
}

.has-cool-to-warm-spectrum-gradient-background {
	background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;
}

.has-blush-light-purple-gradient-background {
	background: var(--wp--preset--gradient--blush-light-purple) !important;
}

.has-blush-bordeaux-gradient-background {
	background: var(--wp--preset--gradient--blush-bordeaux) !important;
}

.has-luminous-dusk-gradient-background {
	background: var(--wp--preset--gradient--luminous-dusk) !important;
}

.has-pale-ocean-gradient-background {
	background: var(--wp--preset--gradient--pale-ocean) !important;
}

.has-electric-grass-gradient-background {
	background: var(--wp--preset--gradient--electric-grass) !important;
}

.has-midnight-gradient-background {
	background: var(--wp--preset--gradient--midnight) !important;
}

.has-small-font-size {
	font-size: var(--wp--preset--font-size--small) !important;
}

.has-medium-font-size {
	font-size: var(--wp--preset--font-size--medium) !important;
}

.has-large-font-size {
	font-size: var(--wp--preset--font-size--large) !important;
}

.has-x-large-font-size {
	font-size: var(--wp--preset--font-size--x-large) !important;
}

:root :where(.wp-block-icon svg) {
	width: 24px;
}

:root :where(.wp-block-pullquote) {
	font-size: 1.5em;
	line-height: 1.6;
}

/* ==========================================================================
   Jerarquía Tipográfica para Páginas Legales y Contenido
   ========================================================================== */
.prose,
.legal-content,
.entry-content {
	color: #374151;
	font-size: 1.05rem;
	line-height: 1.8;
}

/* TÍTULO PRINCIPAL DE SECCIÓN (H2) */
.prose h2,
.legal-content h2,
.entry-content h2 {
	display: block !important;
	font-size: 1.5rem !important;
	font-weight: 800 !important;
	color: #0f172a !important;
	margin-top: 2.75rem !important;
	margin-bottom: 1.25rem !important;
	padding-bottom: 0.6rem !important;
	border-bottom: 2px solid #cbd5e1 !important;
	letter-spacing: -0.02em !important;
	position: relative;
}

.prose h2::after,
.legal-content h2::after,
.entry-content h2::after {
	content: "";
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 60px;
	height: 3px;
	background-color: #059669;
	border-radius: 2px;
}

/* SUBTÍTULOS DE SECCIÓN (H3) */
.prose h3,
.legal-content h3,
.entry-content h3 {
	display: block !important;
	font-size: 1.2rem !important;
	font-weight: 700 !important;
	color: #047857 !important;
	margin-top: 1.75rem !important;
	margin-bottom: 0.75rem !important;
	padding-left: 0.85rem !important;
	border-left: 4px solid #10b981 !important;
	background-color: #f0fdf4 !important;
	padding-top: 0.35rem !important;
	padding-bottom: 0.35rem !important;
	border-radius: 0 0.5rem 0.5rem 0 !important;
}

/* SUB-SUBTÍTULOS O NIVELES INFERIORES (H4) */
.prose h4,
.legal-content h4,
.entry-content h4 {
	display: block !important;
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	color: #1e293b !important;
	margin-top: 1.25rem !important;
	margin-bottom: 0.5rem !important;
}

/* PÁRRAFOS Y TEXTO */
.prose p,
.legal-content p,
.entry-content p {
	margin-top: 0.85rem !important;
	margin-bottom: 0.85rem !important;
	line-height: 1.75 !important;
}

/* NEGRITA RESALTADA */
.prose strong,
.legal-content strong,
.entry-content strong {
	font-weight: 700 !important;
	color: #0f172a !important;
}

/* LISTAS CON VIÑETAS */
.prose ul,
.legal-content ul,
.entry-content ul {
	list-style-type: disc !important;
	margin-top: 0.75rem !important;
	margin-bottom: 1rem !important;
	padding-left: 1.75rem !important;
}

.prose li,
.legal-content li,
.entry-content li {
	margin-top: 0.4rem !important;
	margin-bottom: 0.4rem !important;
	line-height: 1.65 !important;
}

/* ENLACES DENTRO DEL CONTENIDO */
.prose a,
.legal-content a,
.entry-content a {
	color: #059669 !important;
	font-weight: 600 !important;
	text-decoration: underline !important;
	text-underline-offset: 3px !important;
	transition: color 0.15s ease !important;
}

.prose a:hover,
.legal-content a:hover,
.entry-content a:hover {
	color: #047857 !important;
}

/* TARJETAS DE DATOS LEGALES */
.legal-info-box {
	background-color: #f8fafc;
	border: 1px solid #e2e8f0;
	border-left: 4px solid #059669;
	border-radius: 0.75rem;
	padding: 1.25rem;
	margin: 1.5rem 0;
}

/* TABLAS LEGALES (PARA POLÍTICA DE COOKIES) */
.legal-table-container {
	overflow-x: auto;
	margin: 1.5rem 0;
	border: 1px solid #e2e8f0;
	border-radius: 0.75rem;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.legal-table,
.prose table,
.legal-content table {
	width: 100% !important;
	border-collapse: collapse !important;
	text-align: left !important;
	font-size: 0.95rem !important;
}

.legal-table th,
.prose table th,
.legal-content table th {
	background-color: #f1f5f9 !important;
	color: #0f172a !important;
	font-weight: 700 !important;
	padding: 0.85rem 1rem !important;
	border-bottom: 2px solid #cbd5e1 !important;
}

.legal-table td,
.prose table td,
.legal-content table td {
	padding: 0.85rem 1rem !important;
	border-bottom: 1px solid #e2e8f0 !important;
	color: #334155 !important;
	vertical-align: top !important;
}

.legal-table tr:last-child td,
.prose table tr:last-child td,
.legal-content table tr:last-child td {
	border-bottom: none !important;
}

.legal-table tr:hover,
.prose table tr:hover,
.legal-content table tr:hover {
	background-color: #f8fafc !important;
}

.cookie-code {
	font-family: monospace;
	font-weight: 700;
	color: #059669;
	background-color: #ecfdf5;
	padding: 0.2rem 0.45rem;
	border-radius: 0.35rem;
	border: 1px solid #a7f3d0;
}