{#/* --- Base & Global Styles --- */
.img-responsive {
	display: block;
	max-width: 100%;
}
body {
	font-family: "Exo", sans-serif;
}

/* --- Header Layout --- */
.header {
	background-color: #EEEEEE;
	padding: 30px 0px;
}
.header .wrap {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.header .wrap .logo {
  max-width: 175px;
  width: 100%;
}

/* --- Main Navigation --- */
.header .wrap nav {
	width: 100%;
}
.header .wrap nav ul {
	display: flex;
	align-items: center;
	gap: 40px;
	margin-left: 0px;
  justify-content: center;
}
.header .wrap nav ul li {
	list-style: none;
	z-index: 9;
}
.header .wrap nav ul li, 
.header .wrap nav ul li a {
	font-family: "Exo", sans-serif;
	font-size: 16px;
	line-height: 120%;
	color: #20221F;
	font-weight: 600;
	text-decoration: none;
}
.header .wrap nav .traduccion_movil {
	display: none;
}

/* --- Submenu Parent Item --- */
.header .wrap nav ul li.hs-item-has-children > a {
	position: relative;
	transition: color 0.3s ease;
}
.header .wrap nav ul li.hs-item-has-children > a::after {
	content: url("https://www.pentafon.com/hubfs/flecha-abajo-menu.png");
	position: absolute;
	top: calc(50% - 3px);
	right: -25px;
	transform: translateY(-50%);
	width: 16px;
	height: 16px;
	transition: content 0.3s ease; /* Note: content swap is instant */
}

/* --- Submenu Parent Item (Open State on Hover) --- */
.header .wrap nav ul li.hs-item-has-children:hover > a {
	color: #E41C3D;
}
.header .wrap nav ul li.hs-item-has-children:hover > a::after {
	content: url("https://www.pentafon.com/hubfs/flecha-arriba-menu.png");
}

/* --- Submenu Dropdown Wrapper --- */
.header .wrap nav ul li.hs-item-has-children ul.hs-menu-children-wrapper {
	display: none !important;
}

.header .wrap nav ul li.hs-item-has-children:hover ul.hs-menu-children-wrapper {
    display: flex !important;
	justify-content: center;
	align-items: flex-start;
	position: absolute;
    background-color: #f9f9f9;
    /* min-width: 100%; */
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
	padding: 20px 20px 20px 50px;
	margin: 0px;
	width: 100%;
	max-width: 100%;
	left: 0;
}

/* --- Submenu Dropdown Items & Links --- */
.header .wrap nav ul li.hs-item-has-children .hs-menu-children-wrapper li {
	margin: 0px 0px 40px;
}
.header .wrap nav ul li.hs-item-has-children .hs-menu-children-wrapper li:last-child {
	margin: 0px;
}

.header .wrap nav ul li.hs-item-has-children .hs-menu-children-wrapper a {
	font-size: 15px;
	line-height: 150%;
	position: relative; /* For the ::before icon */
}
.header .wrap nav ul li.hs-item-has-children:hover:first-child .hs-menu-children-wrapper .hs-menu-depth-2 {
	text-decoration: none;
}

.header .wrap nav ul li.hs-item-has-children .hs-menu-children-wrapper .hs-menu-depth-2 .hs-menu-depth-3 > a:hover {
	text-decoration: underline;
}
.header .wrap nav ul li.hs-item-has-children .hs-menu-children-wrapper a::after {
	content: none; /* Removes arrow from submenu items */
}

/* Menus que que solo tienen un sub-menu */
.header .wrap nav ul li.hs-item-has-children:hover:not(:first-child) ul.hs-menu-children-wrapper {
	padding: 20px 20px 20px 50px;
	flex-direction: column;
	width: 100%;
	max-width: fit-content;
	min-width: fit-content;
	left: auto;
	gap: 0px;
}
.header .wrap nav ul li.hs-item-has-children:hover:not(:first-child) .hs-menu-children-wrapper .hs-menu-depth-2 > a:hover {
	text-decoration: underline;
}
.header .wrap nav ul li.hs-item-has-children:hover:not(:first-child) ul.hs-menu-children-wrapper li.hs-menu-depth-2 a {
	color: #20221F;
}
.header .wrap nav ul li.hs-item-has-children:hover:not(:first-child) ul.hs-menu-children-wrapper li.hs-menu-depth-2 a::before {
	content: url(https://www.pentafon.com/hubfs/ico-submenu-header.png);
	position: absolute;
	top: calc(50% - 3px);
	left: -30px;
	transform: translateY(-50%);
	width: 16px;
	height: 16px;
}

.header .wrap nav ul li.hs-item-has-children:hover ul.hs-menu-children-wrapper li.hs-menu-depth-2 a {
	color: #E41C3D;
}
.header .wrap nav ul li.hs-item-has-children:hover ul.hs-menu-children-wrapper li.hs-menu-depth-2 a:hover {
    text-decoration: underline !important;
}

/* Sub-menu que tiene varios sub menus, en la opción de soluciones */
.header .wrap nav ul li.hs-item-has-children:hover ul.hs-menu-children-wrapper li.hs-menu-depth-2 ul.hs-menu-children-wrapper {
	display: block !important;
	padding: 20px;
	position: static;
	box-shadow: none;
}

.header .wrap nav ul li.hs-item-has-children:hover ul.hs-menu-children-wrapper li.hs-menu-depth-2 ul.hs-menu-children-wrapper li.hs-menu-depth-3 a {
	color: #20221F;
}

.header .wrap nav ul li.hs-item-has-children:hover ul.hs-menu-children-wrapper li.hs-menu-depth-2 ul.hs-menu-children-wrapper li.hs-menu-depth-3 a::before {
	content: url(https://www.pentafon.com/hubfs/ico-submenu-header.png);
	position: absolute;
	top: calc(50% - 3px);
	left: -30px;
	transform: translateY(-50%);
	width: 16px;
	height: 16px;
}


/* --- Header Contact Section --- */
.header .wrap .contact {
	display: flex;
	align-items: center;
	gap: 30px;
}
.header .wrap .contact .btn-contact {
	padding: 6px 10px;
	background-color: #E41C3D;
	color: #fff;
	border-top-left-radius: 15px;
	border-bottom-right-radius: 15px;
	text-decoration: none;
	font-weight: 600;
}
.header .wrap .contact .traduccion ul {
	display: flex;
	align-items: center;
	gap: 0px;
	margin: 0px;
	padding: 0px;
}
.header .wrap .contact .traduccion ul li {
	list-style: none;
}
.header .wrap .contact .traduccion ul li a {
	text-decoration: none;
}
.header .wrap .contact .traduccion ul li:first-child {
	background-color: #fff;
	padding: 10px;
}
.header .wrap .contact .traduccion ul li:nth-child(2) {
	background-color: #CCCCCC;
	padding: 10px;
}

/* --- Media Queries --- */

/* Medium Desktops */
@media (min-width: 980px) {
  .header .wrap nav ul li.hs-menu-depth-1.hs-item-has-children {
    margin: 0 24px 0 0;
  }
  [data-global-resource-path="sitio_web_2025/penta_modulos/partials/header.html"] {
    position: sticky;
    top: 0;
    z-index: 1000;
  }
}
@media (min-width: 1200px) and (max-width: 1362px) { 
  .header .wrap nav ul {
    gap: 11px;
    justify-content: space-between;
  }
}
@media (min-width: 980px) and (max-width: 1200px) {
	.header .content {
		width: 95%;
	}
	.header .wrap {
		gap: 15px;
	}
	.header .wrap .logo {
		max-width: 50%;
	}
	.header .wrap .logo a img {
		max-width: 100%;
	}
	.header .wrap nav ul {
		padding: 0px;
		margin: 0px;
		gap: 30px;
	}
  .header .wrap nav ul {
    gap: 10px;
    justify-content: space-between;
  }
	.header .wrap nav ul li a {
		font-size: 15px;
	}
	.header .wrap .contact {
		gap: 10px;
	}
	.header .wrap .contact .btn-contact {
		font-size: 14px;
	}
}

/* Tablets & Mobile */
@media (max-width: 979px) {
	/* Hide contact section on mobile */
	.header .wrap .contact {
		display: none;
	}

	/* Mobile Nav Container */
    .header .wrap .main-nav {
        position: absolute;
        right: 0px;
        top: 0px;
        background-color: #EEEEEE;
        height: 100vh;
        width: 40%;
        display: none;
        flex-direction: column;
        align-items: center;
        transform: translateX(100%);
        transition: transform 0.5s ease-in;
		padding: 40px 0px 0px;
    }
    .header .wrap .main-nav.nav-active {
        display: flex;
        transform: translateX(0%);
		z-index: 9;
    }
    .header .wrap .main-nav ul {
        flex-direction: column;
        align-items: center;
		margin: 0px;
		padding: 0px 0px 0px 30px;
		width: 100%;
    }
	.header .wrap .main-nav ul li {
		width: 100%;
	}
	.header .wrap .main-nav.nav-active .hs_cos_wrapper.hs_cos_wrapper_widget.hs_cos_wrapper_type_menu {
		width: 100%;
	}
	.header .wrap .main-nav.nav-active .traduccion_movil {
		display: block;
		display: flex;
		flex-direction: column;
		gap: 20px;
		margin: 0px 0px 30px;
	}
	.header .wrap .main-nav.nav-active .traduccion_movil .btn-contact {
		padding: 6px 10px;
		background-color: #E41C3D;
		color: #fff;
		border-top-left-radius: 15px;
		border-bottom-right-radius: 15px;
		text-decoration: none;
		font-weight: 600;
	}
	.header .wrap .main-nav.nav-active .traduccion_movil ul {
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 0px;
		margin: 0px;
		padding: 0px;
	}
	.header .wrap .main-nav.nav-active .traduccion_movil ul li {
		list-style: none;
	}
	.header .wrap .main-nav.nav-active .traduccion_movil ul li a {
		text-decoration: none;
		width: 100%;
        display: block;
        margin: auto;
        max-width: fit-content;
	}
	.header .wrap .main-nav.nav-active .traduccion_movil ul li a.active { 
		
	}
	.header .wrap .main-nav.nav-active .traduccion_movil ul li:first-child {
		background-color: #fff;
		padding: 10px;
	}
	.header .wrap .main-nav.nav-active .traduccion_movil ul li:nth-child(2) {
		background-color: #CCCCCC;
		padding: 10px;
	}

	/* Mobile Submenu Behavior */
	.header .wrap nav ul li.hs-item-has-children > a {
		color: #20221f;
		&::after {
			content: url(https://www.pentafon.com/hubfs/flecha-abajo-menu.png);
		}
	}
	.header .wrap nav ul li.hs-item-has-children .hs-menu-children-wrapper {
		position: relative; /* antes estaba static */
		display: none;
		width: 100%;
		box-shadow: none;
		background-color: transparent;
		padding-left: 30px;
		transition: max-height 0.4s ease, opacity 0.3s ease;
		max-height: 0;
		overflow: hidden;
		opacity: 0;
	}
	.header .wrap nav ul li.hs-item-has-children:hover ul.hs-menu-children-wrapper {
		display: none !important; /* Prevent hover effect on mobile */
	}
	.header .wrap nav ul li.hs-item-has-children:hover > a {
		color: #20221f;
		&::after {
			content: url(https://www.pentafon.com/hubfs/flecha-abajo-menu.png);
		}
	}
	.header .wrap nav ul li.hs-item-has-children.submenu-open > a {
		color: #E41C3D;
		&::after {
			content: url(https://www.pentafon.com/hubfs/flecha-arriba-menu.png);
		}
	}
	.header .wrap nav ul li.hs-item-has-children.submenu-open .hs-menu-children-wrapper.open-menu-list {
		display: block !important;
		max-height: 500px; 
		opacity: 1;
		padding: 20px 20px 0px 30px;
		background-color: #eeeeee;
		box-shadow: none;
	}
	.header .wrap nav ul li.hs-item-has-children.submenu-open .hs-menu-children-wrapper {
		display: block !important;
		max-height: 100%;
		opacity: 1;
	}
	
	.header .wrap nav ul li.hs-menu-depth-1 ul.hs-menu-children-wrapper {
		.hs-menu-depth-2 .hs-menu-children-wrapper {
			display: none !important;
		}
	}
	
	.header .wrap nav ul li.hs-menu-depth-1 ul.hs-menu-children-wrapper.open-menu-list {
		.hs-menu-depth-2 .hs-menu-children-wrapper{
			display: block !important;
		}
	}
	
	.header .wrap nav ul li.hs-item-has-children.submenu-open:first-child  {
		.hs-menu-children-wrapper.open-menu-list {
			display: block !important;
			max-height: 500px; /* ajusta según contenido */
			opacity: 1;
			padding: 20px 20px 0px 30px;
			background-color: #eeeeee;
			box-shadow: none;
			position: relative;
		}
	}

	.header .wrap nav ul li.hs-item-has-children ul.hs-menu-children-wrapper li.hs-menu-depth-2 ul.hs-menu-children-wrapper {
		background-color: #eeeeee;
	}

	.header .wrap nav ul li.hs-item-has-children.submenu-open .hs-menu-children-wrapper.open-menu-list li:last-child {
		margin: 0px;
	}

	.header .wrap nav ul li.hs-item-has-children:hover ul.hs-menu-children-wrapper li.hs-menu-depth-2 ul.hs-menu-children-wrapper {
		position: relative;
		max-height: fit-content;
	}
	.header .wrap nav ul li.hs-item-has-children:hover ul.hs-menu-children-wrapper li.hs-menu-depth-2 ul.hs-menu-children-wrapper li.hs-menu-item.hs-menu-depth-3 {
		display: block;
		color: #20221f;
		opacity: 0;
		position: relative;
		margin: 0 0 10px;
		a {
			color: #20221f;
		}
	}

	.header .wrap nav ul li.hs-menu-depth-1.hs-item-has-children.submenu-open ul.hs-menu-children-wrapper li.hs-menu-depth-2.hs-item-has-children ul.hs-menu-children-wrapper {
		display: none !important;
	}
	.header .wrap nav ul li.hs-menu-depth-1.hs-item-has-children.submenu-open ul.hs-menu-children-wrapper li.hs-menu-depth-2.hs-item-has-children.submenu-open ul.hs-menu-children-wrapper {
		display: block !important;
		padding: 20px 20px 20px 30px;
		li.hs-menu-item.hs-menu-depth-3 {
			opacity: 1;
			transition: opacity 0.3s ease-in;
		}
	}
	/*.header .wrap nav ul li.hs-menu-depth-1.hs-item-has-children.submenu-open ul.hs-menu-children-wrapper li.hs-menu-depth-2.hs-item-has-children {
		ul.hs-menu-children-wrapper {
			display: none !important;
		}
		&.submenu-open {
			ul.hs-menu-children-wrapper {
				display: block !important;
			}
		}
	}*/

	.header .wrap nav ul li.hs-item-has-children:not(:first-child) ul.hs-menu-children-wrapper {
		display: block;
		position: relative;
	}
	

	/* Burger Menu */
    .burger {
        display: block;
		z-index: 99;
    }
	.line1, .line2, .line3 {
		width: 30px;
		height: 3px;
		background-color: #20221F;
		margin: 5px;
		transition: all 0.3s ease;
	}
}

/* Small Mobile */
@media (max-width: 480px) {
	.header .wrap .main-nav {
		width: 50%;
	}
}

/* --- Burger Animation --- */
.toggle .line1 {
    transform: rotate(-45deg) translate(-5px, 6px);
}
.toggle .line2 {
    opacity: 0;
}
.toggle .line3 {
    transform: rotate(45deg) translate(-5px, -6px);
}

/* --- Nav Link Fade Animation --- */
@keyframes navLinkFade {
  from {
    opacity: 0;
    transform: translateX(50px);
  }
  to {
    opacity: 1;
    transform: translateX(0px);
  }
}

/* --- Mobile Menu Overlay --- */
.mobile-menu-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 8;
}

/* --- Mobile Menu Overlay Active State --- */
.mobile-menu-overlay.active {
  display: block;
  /* Para un fondo blanco semitransparente, usa la siguiente línea en su lugar */
  /* background-color: rgba(255, 255, 255, 0.8); */
}
#}