:root {
			--primary: #7c3aed;
			--primary-dark: #6d28d9;
			--secondary: #06b6d4;
			--secondary-dark: #0891b2;
			--accent: #f59e0b;
			--dark: #0f172a;
			--gray: #64748b;
			--light: #f1f5f9;
			--white: #ffffff;
		}

		* {
			margin: 0;
			padding: 0;
			box-sizing: border-box;
		}

		body {
			font-family: 'Poppins', sans-serif;
			line-height: 1.6;
			color: var(--dark);
			overflow-x: hidden;
		}

		/* Header */
		.header_primary {
			background: rgba(255, 255, 255, 0.95);
			backdrop-filter: blur(20px);
			padding: 0.8rem 3rem;
			position: fixed;
			top: 0;
			width: 100%;
			z-index: 1000;
			box-shadow: 0 1px 20px rgba(124, 58, 237, 0.1);
			border-bottom: 2px solid rgba(124, 58, 237, 0.1);
		}

		.img_logo_header {
			transition: all 0.3s;
		}

		.img_logo_header:hover {
			transform: scale(1.08) rotate(-2deg);
		}

		.menu_desplegable {
			display: flex;
			gap: 1rem;
			list-style: none;
			margin: 0;
			padding: 0;
			align-items: center;
		}

		.menu_desplegable a {
			color: var(--dark) !important;
			text-decoration: none;
			font-weight: 600;
			font-size: 0.95rem;
			transition: all 0.3s;
			padding: 0.6rem 1.3rem;
			border-radius: 12px;
			position: relative;
		}

		.menu_desplegable a::before {
			content: '';
			position: absolute;
			bottom: 0;
			left: 50%;
			transform: translateX(-50%);
			width: 0;
			height: 3px;
			background: linear-gradient(90deg, var(--primary), var(--secondary));
			transition: width 0.3s;
			border-radius: 10px;
		}

		.menu_desplegable a:hover::before {
			width: 80%;
		}

		.menu_desplegable a:hover {
			color: var(--primary) !important;
		}

		.boton_header {
			display: none;
			background: linear-gradient(135deg, var(--primary), var(--secondary));
			border: none;
			padding: 0.6rem 1rem;
			border-radius: 12px;
			cursor: pointer;
			font-size: 1.5rem;
			color: white;
			box-shadow: 0 4px 15px rgba(124, 58, 237, 0.3);
		}

		/* Hero Section */
		.h_custom {
			min-height: 100vh;
			background: linear-gradient(135deg, #7c3aed 0%, #06b6d4 100%);
			display: flex;
			align-items: center;
			justify-content: center;
			padding: 8rem 2rem 4rem;
			position: relative;
			overflow: hidden;
		}

		.h_custom::before {
			content: '';
			position: absolute;
			width: 600px;
			height: 600px;
			background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
			top: -200px;
			right: -200px;
			border-radius: 50%;
			animation: float 20s infinite ease-in-out;
		}

		.h_custom::after {
			content: '';
			position: absolute;
			width: 400px;
			height: 400px;
			background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 70%);
			bottom: -100px;
			left: -100px;
			border-radius: 50%;
			animation: float 15s infinite ease-in-out reverse;
		}

		@keyframes float {
			0%, 100% { transform: translate(0, 0) scale(1); }
			50% { transform: translate(30px, -30px) scale(1.1); }
		}

		.bg_black_opacity {
			background: rgba(255, 255, 255, 0.15) !important;
			backdrop-filter: blur(30px);
			padding: 3.5rem !important;
			border-radius: 30px;
			box-shadow: 0 30px 80px rgba(0,0,0,0.2);
			border: 2px solid rgba(255,255,255,0.3);
			position: relative;
			z-index: 1;
		}

		.font_size_custom_h1 {
			font-size: 4rem;
			font-weight: 800;
			line-height: 1.1;
			margin-bottom: 1.5rem;
		}

		/* Phone Section */
		.llamada_grande {
			font-size: 3.5rem;
			background: linear-gradient(135deg, var(--primary), var(--secondary));
			-webkit-background-clip: text;
			-webkit-text-fill-color: transparent;
			text-decoration: none;
			font-weight: 900;
			transition: all 0.3s;
			display: inline-block;
			letter-spacing: -1px;
		}

		.llamada_grande:hover {
			transform: scale(1.08);
		}

		.c_text_azul {
			background: linear-gradient(135deg, var(--primary), var(--secondary));
			-webkit-background-clip: text;
			-webkit-text-fill-color: transparent;
		}

		/* About Section */
		.font_size_custom_h2 {
			font-size: 3.5rem;
			font-weight: 800;
			line-height: 1.1;
			margin-bottom: 2rem;
		}

		.c_text_gris {
			color: var(--dark) !important;
		}

		.font_size_custom_p {
			font-size: 1.15rem;
			line-height: 2;
			color: var(--gray);
			font-weight: 400;
		}

		.c_text_gris_bajo {
			color: var(--gray) !important;
		}

		.boton_St_3 {
			background: linear-gradient(135deg, var(--primary), var(--primary-dark));
			color: white;
			padding: 1.2rem 3.5rem;
			border: none;
			border-radius: 60px;
			font-size: 1.1rem;
			font-weight: 700;
			cursor: pointer;
			transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
			text-decoration: none;
			display: inline-block;
			box-shadow: 0 10px 40px rgba(124, 58, 237, 0.4);
			margin-top: 2rem;
			position: relative;
			overflow: hidden;
		}

		.boton_St_3::before {
			content: '';
			position: absolute;
			top: 50%;
			left: 50%;
			width: 0;
			height: 0;
			background: rgba(255,255,255,0.2);
			border-radius: 50%;
			transform: translate(-50%, -50%);
			transition: width 0.6s, height 0.6s;
		}

		.boton_St_3:hover::before {
			width: 300px;
			height: 300px;
		}

		.boton_St_3:hover {
			transform: translateY(-5px);
			box-shadow: 0 15px 50px rgba(124, 58, 237, 0.5);
		}

		.cont_fondo_movil {
			position: relative;
			z-index: 1;
		}

		/* Stats Section */
		.height_box_datos {
			min-height: 220px;
			transition: all 0.4s;
			border-radius: 25px;
			padding: 2rem !important;
			position: relative;
			overflow: hidden;
		}

		.height_box_datos::before {
			content: '';
			position: absolute;
			inset: 0;
			background: linear-gradient(135deg, rgba(124, 58, 237, 0.05), rgba(6, 182, 212, 0.05));
			opacity: 0;
			transition: opacity 0.3s;
		}

		.height_box_datos:hover::before {
			opacity: 1;
		}

		.height_box_datos:hover {
			transform: translateY(-15px);
			box-shadow: 0 20px 60px rgba(124, 58, 237, 0.15);
			background: white;
		}

		.border_right {
			border-right: 3px solid rgba(124, 58, 237, 0.1);
		}

		.contadores {
			font-weight: 900 !important;
			background: linear-gradient(135deg, var(--primary), var(--secondary));
			-webkit-background-clip: text;
			-webkit-text-fill-color: transparent;
		}

		/* Products Section */
		.bg_background_img_seccion_3 {
			background: linear-gradient(135deg, var(--dark) 0%, #1e293b 100%);
			position: relative;
		}

		.bg_filter_sec_3 {
			background: transparent;
		}

		.font_size_custom_h3 {
			font-size: 1.6rem;
			font-weight: 700;
		}

		.alto_box {
			min-height: 520px;
		}

		.alto_box .bg-white {
			transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
			border-radius: 25px !important;
			border: 3px solid transparent;
			overflow: hidden;
		}

		.alto_box .bg-white:hover {
			transform: translateY(-20px) scale(1.02);
			box-shadow: 0 30px 80px rgba(124, 58, 237, 0.3);
			border-color: var(--accent);
		}

		.alto_box img {
			border-radius: 20px;
			margin-bottom: 1.5rem;
			transition: all 0.3s;
		}

		.alto_box .bg-white:hover img {
			transform: scale(1.05);
		}

		/* Contact Section */
		.bg_background_grey_fuerte {
			background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
			position: relative;
			overflow: hidden;
		}

		.bg_background_grey_fuerte::before {
			content: '';
			position: absolute;
			width: 800px;
			height: 800px;
			background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
			top: -400px;
			right: -400px;
			border-radius: 50%;
		}

		/* Footer */
		.bg_color_background {
			background: var(--dark);
			padding: 3rem 0;
		}

		.button_custom_footer {
			width: 70px;
			height: 70px;
			border-radius: 20px;
			display: flex;
			align-items: center;
			justify-content: center;
			color: white;
			font-size: 2rem;
			margin: 0.8rem;
			transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
			text-decoration: none;
		}

		.bg_telefono_footer {
			background: linear-gradient(135deg, var(--primary), var(--primary-dark));
		}

		.bg_whatsapp_footer {
			background: linear-gradient(135deg, #25D366, #128C7E);
		}

		.button_custom_footer:hover {
			transform: translateY(-10px) scale(1.15) rotate(5deg);
			box-shadow: 0 15px 40px rgba(0,0,0,0.4);
		}

		.border_top_custom {
			border-top: 2px solid rgba(255,255,255,0.15);
			margin-top: 2.5rem;
			padding-top: 2.5rem;
		}

		/* Responsive */
		@media (max-width: 992px) {
			.boton_header {
				display: block;
			}

			.menu_desplegable {
				display: none;
			}

			.menu_desplegable.active {
				display: flex;
				flex-direction: column;
				position: absolute;
				top: 100%;
				left: 0;
				right: 0;
				background: white;
				padding: 2rem;
				box-shadow: 0 20px 60px rgba(0,0,0,0.15);
			}

			.font_size_custom_h1 {
				font-size: 2.8rem;
			}

			.font_size_custom_h2 {
				font-size: 2.5rem;
			}

			.llamada_grande {
				font-size: 2.5rem;
			}

			.border_right {
				border-right: none;
				border-bottom: 3px solid rgba(124, 58, 237, 0.1);
			}

			.h_custom {
				padding: 6rem 1.5rem 3rem;
			}
		}

		/* Animations */
		@keyframes fadeInUp {
			from {
				opacity: 0;
				transform: translateY(40px);
			}
			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		.animate-fade {
			animation: fadeInUp 1s ease-out;
		}

		/* Glow effect */
		@keyframes glow {
			0%, 100% {
				box-shadow: 0 0 20px rgba(124, 58, 237, 0.5);
			}
			50% {
				box-shadow: 0 0 40px rgba(6, 182, 212, 0.8);
			}
		}


.color_fondo_azul
{
    background-color: var(--primary-dark);
}
.color_fondo_verde
{
    background-color: var(--dark);
}
.bg_filter_sec_3
{
    width: 100%;
    height: 100%;
    background-color: #000000c5;
}

#mor_calentadores
{
    opacity: 1;
    min-height: 100vh !important;
}
.calentadores_baja_1, .calentadores_baja_2, .calentadores_baja_3
{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.font_size_custom_h3_1
{
    font-size: 1.2rem;
}
.border_custom
{
    border: 1px solid var(--accent);
}
.img_cover
{
    object-fit: cover;
    object-position: center;
}

.tachado_text
{
    text-decoration: line-through;
}
.uppercase
{
    text-transform: uppercase;
}
.subrayado_amarillo
{
    background-color: var(--accent);
}


.boton_description
{
    width: 100%;
    height: 30px;
    background-color: #d6d6d6;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem !important;
    color: var(--color_gris_bajo);
    cursor: pointer;
    transition: all 0.3s ease;
}
.boton_description:hover
{
    background-color: #b4b4b4;
}
.box_text_descripction
{
    height: 0px;
    background-color: #ececec;
    overflow: hidden;
    transform: height;
    transition: all 0.3s ease;
}
.boton_St_3
{
    display: flex;
    align-items: center;
    justify-content: center;
}