  /* =====================
           ESTILOS DEL MAPA
        ===================== */
        .map-container {
            /* Contenedor principal del visor */
            position: relative;
            max-width: 1370px;
            height: 650px;
            background-color: white;
            overflow: hidden;
            cursor: grab;
            margin: 0px auto;
            box-shadow: 0 4px 8px rgba(0,0,0,0.1);
            width: 100%;
        }
        .map-wrapper {
            /* Contenedor que se desplaza y escala con el zoom */
            position: relative;
            transform-origin: 0 0;
            transition: transform 0.2s ease;
            width: 1370px;
            height: 650px;
        }
        .map-image {
            width: 1370px;
            height: 650px;
            object-fit: cover;
            user-select: none;
            pointer-events: none;
        }
    @media screen and (max-width: 768px) {
            .map-container {
                height: 540px;
            }
            .map-wrapper {
                /*height: 540px;*/
            }
           
        }
        /* =====================
           PUNTOS INTERACTIVOS
        ===================== */
        .map-point {
            /* Cada punto del mapa */
            position: absolute;
            width: 18px;
            height: 18px;
            border-radius: 50%;
            cursor: pointer;
            box-shadow: 0 2px 4px rgba(0,0,0,0.3);
            transition: all 0.2s ease;
            z-index: 10;
        }
        .map-point.red { background-color: #E7744B; }
        .map-point.blue { background-color: #1F80FF; }
        .map-point.green { background-color: #A7F290; }
        .map-point:hover { transform: scale(1.2); }
        .map-point.active:hover { transform: scale(1); }
        .map-point.active { z-index: 20; }

        /* =====================
           TOOLTIP GLOBAL
        ===================== */
        .tooltip {
            /* Tooltip flotante, posicionado sobre el punto seleccionado */
            position: absolute;
            left: 0;
            top: 0;
            transform: translate(-50%, -100%);
            color: white;
            padding: 30px;
            border-radius: 12px;
            font-size: 14px;
            z-index: 1000;
            opacity: 0;
            pointer-events: none;
            max-width: 600px;
            min-width: 400px;
            box-shadow: 0 8px 20px rgba(0,0,0,0.4);
            margin-top: -10px;
            display: none;
            gap: 10px;
            background: #333;
            transition: opacity 0.3s ease;
			margin-left:20px;
			justify-content: space-around;
            align-items: center;
        }
  
		.tooltip-content-image{
			width:35%;
			display: flex;
			align-items: center;
			justify-content: center;
			
		}
        .tooltip-content{
			width:65%
		}
        .tooltip.show {
            /* Tooltip visible */
            opacity: 1;
            pointer-events: auto;
            display: flex;
        }
        /* Flecha del tooltip */
        .tooltip::after {
            content: '';
            position: absolute;
            left: 50%;
            bottom: -7px;
            transform: translateX(-50%);
            border-width: 8px 8px 0 8px;
            border-style: solid;
            border-color: #333 transparent transparent transparent;
            width: 0;
            height: 0;
            z-index: 101;
        }
		.tooltip.red{background:#E7744B}
		.tooltip.blue{background:#1F80FF}
		.tooltip.green{background: #A7F290}
        .tooltip.red::after { border-color: #E7744B transparent transparent transparent; }
        .tooltip.blue::after { border-color: #1F80FF transparent transparent transparent; }
        .tooltip.green::after { border-color: #A7F290 transparent transparent transparent; }
        .tooltip .tooltip-image {
            width: 170px;
            height: auto;
            object-fit: cover;
            border-radius: 8px;
            overflow: hidden;
        }
        body h3.tooltip-title {
            color: white;
            margin: 0;
            font-size: 18px;
            font-weight: bold;
			margin-bottom: 10px;
        }
        .tooltip.green .tooltip-title, .tooltip.green .tooltip-description { color: #606060 }
        .tooltip-description {
            margin: 0;
            line-height: 1.4;
            color: white;
            font-size: 12px;
        }
        .tooltip-close {
            position: absolute;
            top: 15px;
            right: 10px;
            background: transparent;
            border: none;
            color: white;
            font-size: 22px;
            font-weight: bold;
            cursor: pointer;
            z-index: 1001;
            padding: 0;
            line-height: 0;
            opacity: 0.7;
            transition: opacity 0.2s;
			pointer-events: auto;
        }
        .tooltip-close:hover {
            opacity: 1;
            color: white;
        }
		.initTooltip{
			transform: none;
			right: 20px;
			left: auto;
			top: 20px;
			z-index: 1001;
			opacity: 1;
			margin: 0;
			background-color:white;
			border:1px solid #1F80FF;
			max-width:470px;
			padding:20px;
		}
		.initTooltip::after{border: 0;}
		.initTooltip .tooltip-title, .initTooltip a{color:#1F80FF;}
		.initTooltip .tooltip-content{width:100%}
		.initTooltip a {font-size:12px;}
		.initTooltip .tooltip-description{color:black}
		.initTooltip .tooltip-description:first-child{
			font-size:14px
		}
.initTooltip .tooltip-close{color:black}
@media screen and (max-width: 768px) {
		.tooltip {
			flex-direction: column;
			max-height:300px;
			padding:20px;
			max-width: 90vw !important;
        	min-width: 90vw;
			overflow-y:scroll;
			margin-left:0;
			justify-content: flex-start;
           align-items: center;
			-webkit-overflow-scrolling: touch;
			z-index: 1000;
			transform: translate(-50%, 0%);
		}
	.tooltip::after {
			display: none;
			top: auto;
			bottom: -7px;
			left: 50%;
			transform: translateX(-50%);
			border-width: 8px 8px 0 8px;
			border-style: solid;
		}
	.initTooltip{
		max-width: 90vw !important;
        min-width: 90vw;
			transform: none;
			right: 50%;
			left: 50%;
			top: 20px;
			z-index: 1000;
			padding:10px;
		max-height: max-content;
        overflow: hidden;
		transform: translate(-50%, 0%);
		}
         .tooltip-content-image{
			width:100%;	
		}
		.tooltip-content{
			width:100%;
		}
    }
/* Aseguramos que los elementos dentro del tooltip sean interactivos */
        .tooltip * {
            pointer-events: auto;
        }
        /* =====================
           CONTROLES DE ZOOM
        ===================== */
        .controls {
            position: absolute;
            bottom: 20px;
            right: 20px;
            display: flex;
            flex-direction: column;
            z-index: 50;
        }
        .control-btn {
            width: 30px;
            height: 30px;
            background-color: rgba(255, 255, 255, 0.7);
            border: 1px solid #E6E7EB;
            border-radius: 4px;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 18px;
            line-height: 20px;
            font-weight: 600;
            transition: all 0.2s ease;
            user-select: none;
            color: black;
            margin-bottom: 2px
        }
        .control-btn:hover { background-color: white; transform: scale(1.05); }
        .control-btn:active { transform: scale(0.95); }
        #resetZoom { margin-bottom: 7px; }
        .zoom-info {
            position: absolute;
            bottom: 20px;
            left: 20px;
            background-color: rgba(0, 0, 0, 0.7);
            color: white;
            padding: 8px 15px;
            border-radius: 20px;
            font-size: 14px;
            z-index: 50;
        }