{"id":505,"date":"2026-07-08T08:09:04","date_gmt":"2026-07-08T13:09:04","guid":{"rendered":"https:\/\/www.bomberosyopal.com\/inicio\/?page_id=505"},"modified":"2026-09-09T10:52:33","modified_gmt":"2026-09-09T15:52:33","slug":"acbocolacademia","status":"publish","type":"page","link":"https:\/\/www.bomberosyopal.com\/inicio\/acbocolacademia\/","title":{"rendered":"ACBOCOL"},"content":{"rendered":"<div class=\"mibody\">\n<section class=\"hero-academia\">\n<div class=\"hero-contenido\">\n<div class=\"logo-academia\">\n        <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/06\/acbocol.png\" alt=\"Logo ACBOCOL\">\n      <\/div>\n<h1>Academia de <span>Bomberos Yopal<\/span><\/h1>\n<p>Ofrecemos cursos y capacitaciones especializadas para empresas, brindando la formaci\u00f3n t\u00e9cnica y operativa necesaria para que su personal se certifique y est\u00e9 calificado para responder ante cualquier emergencia.<\/p>\n<div class=\"hero-botones\">\n        <a class=\"btn-principal\" href=\"#cursos\">Cursos<\/a><br \/>\n        <a href=\"#seccion-contacto\">Contactos<\/a>\n      <\/div>\n<\/p><\/div>\n<\/section>\n<section class=\"estadisticas\">\n<div class=\"stat-card\">\n      <i class=\"bi bi-book\"><\/i><\/p>\n<div class=\"stat-info\">\n<h3>+20<\/h3>\n<p>Cursos disponibles.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"stat-card\">\n      <i class=\"bi bi-building-fill\"><\/i><\/p>\n<div class=\"stat-info\">\n<h3>+50<\/h3>\n<p>Empresas capacitadas.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"stat-card\">\n      <i class=\"bi bi-people-fill\"><\/i><\/p>\n<div class=\"stat-info\">\n<h3>+1.200<\/h3>\n<p>Certificaciones emitidas.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"stat-card\">\n<div class=\"stat-info\">\n<p>DESDE<\/p>\n<h3>2022<\/h3>\n<p>Compartiendo nuestra experiencia.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/section>\n<div id=\"carousel-example-generic\" class=\"carousel slide\" data-ride=\"carousel\">\n<ol class=\"carousel-indicators\">\n<li data-target=\"#carousel-example-generic\" data-slide-to=\"0\" class=\"active\"><\/li>\n<li data-target=\"#carousel-example-generic\" data-slide-to=\"1\"><\/li>\n<\/ol>\n<div class=\"carousel-inner\" role=\"listbox\">\n<div class=\"item active\">\n        <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/08\/BANNER-2.2.png\" alt=\"Banner Academia de Bomberos Yopal\">\n      <\/div>\n<div class=\"item\">\n        <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/08\/BANNER-QR-1.png\" alt=\"QR ACBOCOL\">\n      <\/div>\n<\/p><\/div>\n<p>    <a class=\"left carousel-control\" href=\"#carousel-example-generic\" role=\"button\" data-slide=\"prev\"><br \/>\n      <i class=\"bi bi-arrow-left-circle\"><\/i><br \/>\n    <\/a><br \/>\n    <a class=\"right carousel-control\" href=\"#carousel-example-generic\" role=\"button\" data-slide=\"next\"><br \/>\n      <i class=\"bi bi-arrow-right-circle\"><\/i><br \/>\n    <\/a>\n  <\/div>\n<div class=\"hero-wpp\">\n    <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n\" target=\"_blank\" class=\"whatsapp-link\"><br \/>\n      <span class=\"whatsapp-pulse\"><\/span><br \/>\n      <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"27\" height=\"27\" fill=\"currentColor\" class=\"bi bi-whatsapp\" viewBox=\"0 0 16 16\">\n        <path d=\"M13.601 2.326A7.85 7.85 0 0 0 7.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.9 7.9 0 0 0 3.79.925h.004c4.368 0 7.926-3.558 7.93-7.93A7.9 7.9 0 0 0 13.6 2.326zM7.994 14.521a6.6 6.6 0 0 1-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 0 1-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 0 1 4.66 1.931 6.56 6.56 0 0 1 1.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592m3.618-4.934c-.197-.1-.167-.168-.518-.574-.3-.346-.599-.289-.861-.052-.17.154-.3.32-.443.493-.115.139-.242.131-.44.032a5.1 5.1 0 0 1-1.639-1.012 5.5 5.5 0 0 1-1.135-1.413c-.115-.197-.012-.303.087-.402.09-.088.197-.23.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.61-1.47-.16-.389-.323-.335-.445-.34-.114-.007-.247-.007-.38-.007a.73.73 0 0 0-.529.247c-.182.198-.691.677-.691 1.654s.71 1.916.81 2.049c.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058 1.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232\"\/>\n      <\/svg><br \/>\n      <span class=\"whatsapp-numero\">321 9503696<\/span><br \/>\n    <\/a>\n  <\/div>\n<div class=\"social-sidebar\">\n  <a href=\"https:\/\/www.facebook.com\/\" target=\"_blank\" class=\"social-icon social-facebook\" aria-label=\"Facebook\"><br \/>\n    <i class=\"bi bi-facebook\"><\/i><br \/>\n  <\/a><br \/>\n <a href=\"https:\/\/www.instagram.com\/acbocolacademia\/\" target=\"_blank\" class=\"social-icon social-instagram\" aria-label=\"instagram\"><br \/>\n    <i class=\"bi bi-instagram\"><\/i><br \/>\n  <\/a><br \/>\n  <a href=\"https:\/\/www.tiktok.com\/@acbocol_academia\" target=\"_blank\" class=\"social-icon social-tiktok\" aria-label=\"TikTok\"><br \/>\n    <i class=\"bi bi-tiktok\"><\/i><br \/>\n  <\/a><br \/>\n  <a href=\"https:\/\/www.youtube.com\/@ACBOCOLACADEMIA\" target=\"_blank\" class=\"social-icon social-youtube\" aria-label=\"YouTube\"><br \/>\n    <i class=\"bi bi-youtube\"><\/i><br \/>\n  <\/a>\n<\/div>\n<div class=\"cursos-tabs-wrapper\" id=\"cursos\">\n<div class=\"cursos-search-box\">\n      <span class=\"cursos-search-icon\"><br \/>\n        <svg viewBox=\"0 0 24 24\" width=\"18\" height=\"18\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\">\n          <circle cx=\"11\" cy=\"11\" r=\"6\"><\/circle>\n          <path d=\"m21 21-4.3-4.3\"><\/path>\n        <\/svg><br \/>\n      <\/span><br \/>\n      <input type=\"text\" id=\"busquedaCursos\" class=\"cursos-search-input\"\n  placeholder=\"Buscar curso...\"\n  spellcheck=\"false\" autocorrect=\"off\" autocomplete=\"off\" autocapitalize=\"off\"><br \/>\n      <button type=\"button\" class=\"cursos-search-clear\" id=\"clearBusqueda\" aria-label=\"Limpiar b\u00fasqueda\">&times;<\/button>\n    <\/div>\n<p>    <button type=\"button\" class=\"cursos-menu-toggle\" id=\"cursosMenuToggle\" aria-label=\"Abrir men\u00fa\" aria-expanded=\"false\"><br \/>\n      <span class=\"icon-bars\"><i><\/i><i><\/i><i><\/i><\/span><br \/>\n      <span class=\"icon-close\">\u2715<\/span><br \/>\n    <\/button><\/p>\n<div class=\"cursos-tabs\" id=\"cursosTabs\">\n      <button type=\"button\" class=\"cursos-tab-btn active\" data-tab=\"panelCursos\">Cursos<\/button><br \/>\n      <button type=\"button\" class=\"cursos-tab-btn\" data-tab=\"panelBrigadas\">Cursos para brigadas<\/button><br \/>\n      <button type=\"button\" class=\"cursos-tab-btn\" data-tab=\"panelGratuitos\">Cursos gratis<\/button>\n    <\/div>\n<\/p><\/div>\n<p>  <!-- ==================== PANEL 1: CURSOS ==================== --><\/p>\n<div class=\"cursos-panel active\" id=\"panelCursos\">\n<section class=\"seccion-cursos\">\n<div class=\"container-fluid\" >\n<div class=\"titulo-seccion\">\n<h2>Cursos<\/h2>\n<p>Programas de formaci\u00f3n para emergencias reales.<\/p>\n<\/p><\/div>\n<div class=\"cursos-contenedor\" style=\"display: flex; flex-wrap: wrap;\">\n<p>          <!-- TARJETA 1 --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n              <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/07\/WhatsApp-Image-2026-07-22-at-10.46.41-AM.jpeg\"\n                   alt=\"Gesti\u00f3n, liderazgo y comando\"\n                   onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-card-placeholder\" style=\"display:none\">\n                <span>&#9874;<\/span>\n              <\/div>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos\"><\/span><\/p>\n<h3>Gesti\u00f3n, liderazgo y comando<\/h3>\n<p>Fortalece competencias para dirigir equipos, administrar recursos y tomar decisiones efectivas en la gesti\u00f3n de emergencias y organizaciones bomberiles.<\/p>\n<p>                <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalGestion\">Ver cursos<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>          <!-- TARJETA 2 --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n              <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/07\/WhatsApp-Image-2026-07-22-at-10.46.41-AM.jpeg\"\n                   alt=\"Operaciones contra incendios\"\n                   onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-card-placeholder\" style=\"display:none\">\n                <span>&#9874;<\/span>\n              <\/div>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos\"><\/span><\/p>\n<h3>Operaciones contra incendios<\/h3>\n<p>Desarrolla las competencias t\u00e9cnicas y operativas para la prevenci\u00f3n, control y extinci\u00f3n de incendios mediante procedimientos seguros y estandarizados.<\/p>\n<p>                <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalIncendios\">Ver cursos<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>          <!-- TARJETA 3 --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n              <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2015\/10\/405335613_265007726571776_5240219523017752299_n.jpg\"\n                   alt=\"Rescate t\u00e9cnico\"\n                   onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-card-placeholder\" style=\"display:none\">\n                <span>&#9874;<\/span>\n              <\/div>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos\"><\/span><\/p>\n<h3>Rescate t\u00e9cnico<\/h3>\n<p>Desarrolla competencias para ejecutar operaciones de rescate en diferentes escenarios de emergencia, aplicando t\u00e9cnicas seguras, especializadas y estandarizadas<\/p>\n<p>                <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalRescate\">Ver cursos<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>          <!-- TARJETA 4 --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/07\/WhatsApp-Image-2026-07-22-at-10.46.41-AM.jpeg\"\n                   alt=\"Materiales peligrosos\"\n                   onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos\"><\/span><\/p>\n<h3>Materiales peligrosos<\/h3>\n<p>Fortalece las competencias para identificar, controlar y responder de forma segura ante incidentes con materiales peligrosos, protegiendo a las personas y el medio ambiente.<\/p>\n<p>                <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalMatpel\">Ver curso<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>          <!-- TARJETA 5 --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n              <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/07\/WhatsApp-Image-2026-07-27-at-9.55.07-AM.jpeg\"\n                   alt=\"Atenci\u00f3n prehospitalaria\"\n                   onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-card-placeholder\" style=\"display:none\">\n                <span>&#9874;<\/span>\n              <\/div>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos\"><\/span><\/p>\n<h3>Atenci\u00f3n prehospitalaria<\/h3>\n<p>Desarrolla competencias para brindar atenci\u00f3n inicial oportuna y segura a personas lesionadas o enfermas, estabilizando su condici\u00f3n hasta el traslado a un centro asistencial.<\/p>\n<p>                <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalPrehos\">Ver curso<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/section><\/div>\n<p><!-- fin panelCursos --><\/p>\n<p>  <!-- ==================== PANEL 2: CURSOS PARA BRIGADAS ==================== --><\/p>\n<div class=\"cursos-panel\" id=\"panelBrigadas\">\n<section class=\"seccion-cursos\">\n<div class=\"container-fluid\">\n<div class=\"titulo-seccion\">\n<h2>Cursos para Brigadas<\/h2>\n<p>\n           Dise\u00f1ada seg\u00fan la Res. 0256 de 2014 de la Direcci\u00f3n Nacional de Bomberos, para brigadas Clase I, II y III.\n          <\/p>\n<\/p><\/div>\n<div class=\"cursos-contenedor\" style=\"display: flex; flex-wrap: wrap;\">\n<p>          <!-- TARJETA 1: Clase I --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n              <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/07\/WhatsApp-Image-2026-07-27-at-9.44.15-AM.jpeg\"\n                   alt=\"Brigada Contraincendios Clase I\"\n                   onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-card-placeholder\" style=\"display:none\">\n                <span>&#9874;<\/span>\n              <\/div>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos\">Formaci\u00f3n<\/span><\/p>\n<h3>Brigada Contraincendios Clase I<\/h3>\n<p>Dirigida a empresas de bajo nivel de riesgo.<\/p>\n<p>                <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalClase1\">Ver curso<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>          <!-- TARJETA 2: Clase II --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n              <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/07\/WhatsApp-Image-2026-07-27-at-9.45.31-AM.jpeg\"\n                   alt=\"Brigada Contraincendios Clase II\"\n                   onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-card-placeholder\" style=\"display:none\">\n                <span>&#9874;<\/span>\n              <\/div>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos\">Formaci\u00f3n<\/span><\/p>\n<h3>Brigada Contraincendios Clase II<\/h3>\n<p>Dirigida a empresas con riesgos moderados.<\/p>\n<p>                <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalClase2\">Ver curso<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>          <!-- TARJETA 3: Clase III --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n              <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2017\/05\/404410230_260109010394981_8278814383916335940_n.jpg\"\n                   alt=\"Brigada Contraincendios Clase III\"\n                   onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-card-placeholder\" style=\"display:none\">\n                <span>&#9874;<\/span>\n              <\/div>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos\">Formaci\u00f3n<\/span><\/p>\n<h3>Brigada Contraincendios Clase III<\/h3>\n<p>Dirigida a sectores y empresas de alto riesgo.<\/p>\n<p>                <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalClase3\">Ver curso<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/section><\/div>\n<p><!-- fin panelBrigadas --><\/p>\n<p>  <!-- ==================== PANEL 3: CURSOS GRATIS ==================== --><\/p>\n<div class=\"cursos-panel\" id=\"panelGratuitos\">\n<section class=\"seccion-cursos\">\n<div class=\"container-fluid\">\n<div class=\"titulo-seccion\">\n<h2>Cursos gratis<\/h2>\n<p>Formaci\u00f3n abierta y sin costo para la comunidad.<\/p>\n<\/p><\/div>\n<div class=\"cursos-contenedor\" style=\"display: flex; flex-wrap: wrap;\">\n<p>          <!-- TARJETA GRATIS 1 --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n            <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/07\/incendio-en-casa-1024x576-1.jpg\"alt=\"Curso gratuito\"onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-card-placeholder\" style=\"display:none\">\n                <span>&#9874;<\/span>\n              <\/div>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos badge-gratis\">Gratis<\/span><\/p>\n<h3>INTRODUCCI\u00d3N AL MANEJO DE INCENDIOS INCIPIENTES<\/h3>\n<p>Conceptos b\u00e1sicos para identificar y prevenir riesgos de incendio en tu vivienda.<\/p>\n<p>               <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalGratis1\" data-titulo=\"Curso Gratis 1\">Realizar ya<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>          <!-- TARJETA GRATIS 2 --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n<img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/08\/extintor.jpg\"alt=\"Curso gratuito\"onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-card-placeholder\" style=\"display:none\">\n                <span>&#9874;<\/span>\n              <\/div>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos badge-gratis\">Gratis<\/span><\/p>\n<h3>Introducci\u00f3n al uso de Extintores<\/h3>\n<p>T\u00e9cnicas esenciales de manejo de extintores para proteger a tu familia y comunidad.<\/p>\n<p>               <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalGratis2\" data-titulo=\"Curso Gratis 2\">Realizar ya<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>          <!-- TARJETA GRATIS 3 --><\/p>\n<div class=\"col-xs-12 col-sm-6 col-md-4\">\n<div class=\"curso-card\">\n<img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/07\/planf.jpg\"alt=\"Brigada Contraincendios Clase II\"onerror=\"this.style.display='none';this.nextElementSibling.style.display='flex'\"><\/p>\n<div class=\"curso-card-placeholder\" style=\"display:none\">\n                <span>&#9874;<\/span>\n              <\/div>\n<div class=\"curso-body\">\n                <span class=\"badge-cursos badge-gratis\">Gratis<\/span><\/p>\n<h3>Plan Familiar de Emergencias<\/h3>\n<p>C\u00f3mo construir un plan de evacuaci\u00f3n y respuesta para tu familia paso a paso.<\/p>\n<p>               <button class=\"btn-ver-cursos\" data-toggle=\"modal\" data-target=\"#modalGratis3\" data-titulo=\"Curso Gratis 3\">Realizar ya<\/button>\n              <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/section><\/div>\n<p><!-- fin panelGratuitos --><\/p>\n<!-- Librer\u00eda para generar el PDF -->\r\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jspdf\/2.5.1\/jspdf.umd.min.js\"><\/script>\r\n\r\n<!-- ================= MODAL 1 ================= -->\r\n<div class=\"modal fade modal-80\" id=\"modalGratis1\" tabindex=\"-1\" role=\"dialog\" aria-modal=\"true\"\r\n     aria-labelledby=\"modalGratis1Title\"\r\n     data-video-id=\"Hm5d0DcjFCo\"\r\n     data-curso-nombre=\"INTRODUCCI\u00d3N AL MANEJO DE INCENDIOS INCIPIENTES\">\r\n  <div class=\"modal-dialog\" role=\"document\">\r\n    <div class=\"modal-content\">\r\n\r\n      <div class=\"modal-header\">\r\n        <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Cerrar\">\r\n          <span aria-hidden=\"true\">&times;<\/span>\r\n        <\/button>\r\n        <h4 class=\"modal-title\" id=\"modalGratis1Title\">INTRODUCCI\u00d3N AL MANEJO DE INCENDIOS INCIPIENTES<\/h4>\r\n      <\/div>\r\n\r\n      <div class=\"modal-body-curso-gratis\">\r\n\r\n        <!-- AVISO DE MANTENIMIENTO (se muestra\/oculta segun el interruptor del script) -->\r\n        <div class=\"aviso-mantenimiento\" style=\"display:none; text-align:center; padding:60px 20px;\">\r\n          <i class=\"bi bi-tools\" style=\"font-size:48px; color:#DB0A13;\"><\/i>\r\n          <h4 style=\"margin-top:20px; color:#12294B;\">EN MANTENIMIENTO<\/h4>\r\n          <p style=\"color:#555; font-size:15px;\">Pronto estar\u00e1 disponible para la comunidad.<\/p>\r\n        <\/div>\r\n\r\n        <div class=\"curso-stepper\" style=\"display: flex; justify-content: space-between; font-weight: bold; font-size:12px;\">\r\n          <span class=\"step active\" data-step=\"1\">1. <i class=\"bi bi-play-btn-fill\"><\/i><\/span>\r\n          <span class=\"step\" data-step=\"2\">2. <i class=\"bi bi-ui-checks\"><\/i><\/span>\r\n          <span class=\"step\" data-step=\"3\">3. <i class=\"bi bi-person-check-fill\"><\/i><\/span>\r\n          <span class=\"step\" data-step=\"4\">4. <i class=\"bi bi-award-fill\"><\/i><\/span>\r\n        <\/div>\r\n\r\n        <!-- FASE 1: VIDEO -->\r\n        <div class=\"fase-contenido fase-video\" data-fase=\"1\">\r\n          <div class=\"embed-responsive embed-responsive-16by9\">\r\n            <div class=\"yt-player-container\"><\/div>\r\n          <\/div>\r\n          <p class=\"msg-video\" style=\"display: none;\"><i class=\"bi bi-info-circle-fill\"><\/i>\r\n            Debes terminar de ver el video por completo para poder continuar.\r\n          <\/p>\r\n        <\/div>\r\n\r\n        <!-- FASE 2: EVALUACI\u00d3N (se llena din\u00e1micamente con JS) -->\r\n        <div class=\"fase-contenido fase-quiz\" data-fase=\"2\" style=\"display: none;\">\r\n          <div class=\"quiz-preguntas\"><\/div>\r\n          <p class=\"msg-quiz\" style=\"display: none;\"><\/p>\r\n        <\/div>\r\n\t\t  \r\n\t\t  <!-- Popup de felicitaci\u00f3n al aprobar el quiz -->\r\n\t\t<div class=\"felicitaciones-quiz-overlay\" style=\"display:none;\">\r\n\t\t  <div class=\"felicitaciones-quiz-box\">\r\n\t\t\t  <i class=\"bi bi-hand-thumbs-up-fill\"><\/i>\r\n\t\t\t<p>MUY BIEN, respuestas correctas, dale en siguiente y avancemos...<\/p>\r\n\t\t\t<button type=\"button\" class=\"btn-ok-felicitaciones\">OK<\/button>\r\n\t\t  <\/div>\r\n\t\t<\/div>\r\n\r\n        <!-- FASE 3: DATOS -->\r\n        <div class=\"fase-contenido fase-datos\" data-fase=\"3\" style=\"display: none;\">\r\n          <h5>Paso 3: Ingresa tus datos para el certificado<\/h5>\r\n          <form class=\"form-datos\" autocomplete=\"off\">\r\n            <div class=\"form-group\">\r\n              <label for=\"inputNombre1\">Nombres y Apellidos completos:<\/label>\r\n              <input type=\"text\" class=\"form-control input-nombre\" id=\"inputNombre1\"\r\n                     placeholder=\"Ej. PEREZ JUAN DAVID\" autocomplete=\"off\" data-lpignore=\"true\" required>\r\n            <\/div>\r\n\r\n            <div class=\"form-group\">\r\n              <label for=\"selectTipoDoc1\">Tipo de Documento:<\/label>\r\n              <select class=\"form-control select-tipo-doc\" id=\"selectTipoDoc1\" autocomplete=\"off\">\r\n                <option value=\"CC\">C\u00e9dula de Ciudadan\u00eda (CC)<\/option>\r\n                <option value=\"TI\">Tarjeta de Identidad (TI)<\/option>\r\n                <option value=\"CE\">C\u00e9dula de Extranjer\u00eda (CE)<\/option>\r\n                <option value=\"PA\">Pasaporte (PA)<\/option>\r\n              <\/select>\r\n            <\/div>\r\n\r\n            <div class=\"form-group\">\r\n              <label for=\"inputDocumento1\">N\u00famero de Documento:<\/label>\r\n              <input type=\"text\" class=\"form-control input-documento\" id=\"inputDocumento1\"\r\n                     placeholder=\"Ej. 1001234567\" pattern=\"[0-9]+\" autocomplete=\"off\" data-lpignore=\"true\" required>\r\n            <\/div>\r\n          <\/form>\r\n           <p class=\"msg-datos\" ><i class=\"bi bi-exclamation-triangle-fill\"><\/i>\r\n            Por favor llena todos los campos correctamente (el documento debe ser solo n\u00fameros).\r\n          <\/p>\r\n        <\/div>\r\n\r\n        <!-- FASE 4: CERTIFICADO (Canvas) -->\r\n        <div class=\"fase-contenido fase-certificado\" data-fase=\"4\" style=\"display: none;\">\r\n            <div style=\"text-align: center;\">\r\n\t\t\t\t<canvas class=\"cert-canvas\"><\/canvas>\r\n\t\t\t<\/div>\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n      <div class=\"modal-footer\">\r\n        <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\r\n        <button type=\"button\" class=\"btn btn-descargar-cert\" style=\"display:none;\">\r\n          Descargar certificado (PDF)\r\n        <\/button>\r\n        <button type=\"button\" class=\"btn btn-siguiente\">Siguiente<\/button>\r\n      <\/div>\r\n\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- ================= MODAL 2 ================= -->\r\n<div class=\"modal fade modal-80\" id=\"modalGratis2\" tabindex=\"-1\" role=\"dialog\" aria-modal=\"true\"\r\n     aria-labelledby=\"modalGratis2Title\"\r\n     data-video-id=\"jGTVlX-bgwo\"\r\n     data-curso-nombre=\"INTRODUCCI\u00d3N AL MANEJO DE INCENDIOS INCIPIENTES\">\r\n  <div class=\"modal-dialog\" role=\"document\">\r\n    <div class=\"modal-content\">\r\n\r\n      <div class=\"modal-header\">\r\n        <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Cerrar\">\r\n          <span aria-hidden=\"true\">&times;<\/span>\r\n        <\/button>\r\n        <h4 class=\"modal-title\" id=\"modalGratis2Title\">INTRODUCCI\u00d3N AL MANEJO DE INCENDIOS INCIPIENTES<\/h4>\r\n      <\/div>\r\n\r\n      <div class=\"modal-body-curso-gratis\">\r\n\r\n        <!-- AVISO DE MANTENIMIENTO (se muestra\/oculta segun el interruptor del script) -->\r\n        <div class=\"aviso-mantenimiento\" style=\"display:none; text-align:center; padding:60px 20px;\">\r\n          <i class=\"bi bi-tools\" style=\"font-size:48px; color:#DB0A13;\"><\/i>\r\n          <h4 style=\"margin-top:20px; color:#12294B;\">EN MANTENIMIENTO<\/h4>\r\n          <p style=\"color:#555; font-size:15px;\">Pronto estar\u00e1 disponible para la comunidad.<\/p>\r\n        <\/div>\r\n\r\n        <div class=\"curso-stepper\" style=\"display: flex; justify-content: space-between; font-weight: bold;\">\r\n          <span class=\"step active\" data-step=\"1\">1. <i class=\"bi bi-play-btn-fill\"><\/i><\/span>\r\n          <span class=\"step\" data-step=\"2\">2. <i class=\"bi bi-ui-checks\"><\/i><\/span>\r\n          <span class=\"step\" data-step=\"3\">3. <i class=\"bi bi-person-check-fill\"><\/i><\/span>\r\n          <span class=\"step\" data-step=\"4\">4. <i class=\"bi bi-award-fill\"><\/i><\/span>\r\n        <\/div>\r\n\r\n        <div class=\"fase-contenido fase-video\" data-fase=\"1\">\r\n          <div class=\"embed-responsive embed-responsive-16by9\">\r\n            <div class=\"yt-player-container\"><\/div>\r\n          <\/div>\r\n          <p class=\"msg-video\" style=\"display: none;\"><i class=\"bi bi-info-circle-fill\"><\/i>\r\n            Debes terminar de ver el video por completo para poder continuar.\r\n          <\/p>\r\n        <\/div>\r\n\r\n        <div class=\"fase-contenido fase-quiz\" data-fase=\"2\" style=\"display: none;\">\r\n          <div class=\"quiz-preguntas\"><\/div>\r\n          <p class=\"msg-quiz\" style=\"display: none;\"><\/p>\r\n        <\/div>\r\n\r\n        <div class=\"fase-contenido fase-datos\" data-fase=\"3\" style=\"display: none;\">\r\n          <h5>Paso 3: Ingresa tus datos para el certificado<\/h5>\r\n          <form class=\"form-datos\" autocomplete=\"off\">\r\n            <div class=\"form-group\">\r\n              <label for=\"inputNombre2\">Nombres y Apellidos completos:<\/label>\r\n              <input type=\"text\" class=\"form-control input-nombre\" id=\"inputNombre2\"\r\n                     placeholder=\"Ej. PEREZ JUAN DAVID\" autocomplete=\"off\" data-lpignore=\"true\" required>\r\n            <\/div>\r\n\r\n            <div class=\"form-group\">\r\n              <label for=\"selectTipoDoc2\">Tipo de Documento:<\/label>\r\n              <select class=\"form-control select-tipo-doc\" id=\"selectTipoDoc2\" autocomplete=\"off\">\r\n                <option value=\"CC\">C\u00e9dula de Ciudadan\u00eda (CC)<\/option>\r\n                <option value=\"TI\">Tarjeta de Identidad (TI)<\/option>\r\n                <option value=\"CE\">C\u00e9dula de Extranjer\u00eda (CE)<\/option>\r\n                <option value=\"PA\">Pasaporte (PA)<\/option>\r\n              <\/select>\r\n            <\/div>\r\n\r\n            <div class=\"form-group\">\r\n              <label for=\"inputDocumento2\">N\u00famero de Documento (Solo n\u00fameros):<\/label>\r\n              <input type=\"text\" class=\"form-control input-documento\" id=\"inputDocumento2\"\r\n                     placeholder=\"Ej. 1001234567\" pattern=\"[0-9]+\" autocomplete=\"off\" data-lpignore=\"true\" required>\r\n            <\/div>\r\n          <\/form>\r\n          <p class=\"msg-datos\" ><i class=\"bi bi-exclamation-triangle-fill\"><\/i>\r\n            Por favor llena todos los campos correctamente (el documento debe ser solo n\u00fameros).\r\n          <\/p>\r\n        <\/div>\r\n\r\n        <div class=\"fase-contenido fase-certificado\" data-fase=\"4\" style=\"display: none;\">\r\n           <div style=\"text-align: center;\">\r\n\t\t\t\t<canvas class=\"cert-canvas\"><\/canvas>\r\n\t\t\t<\/div>\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n      <div class=\"modal-footer\">\r\n        <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\r\n        <button type=\"button\" class=\"btn btn-descargar-cert\" style=\"display:none;\">\r\n          Descargar certificado (PDF)\r\n        <\/button>\r\n        <button type=\"button\" class=\"btn btn-siguiente\">Siguiente<\/button>\r\n      <\/div>\r\n\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- ================= MODAL 3 ================= -->\r\n<div class=\"modal fade modal-80\" id=\"modalGratis3\" tabindex=\"-1\" role=\"dialog\" aria-modal=\"true\"\r\n     aria-labelledby=\"modalGratis3Title\"\r\n     data-video-id=\"J02JSdJU_Wo\"\r\n     data-curso-nombre=\"Plan Familiar de Emergencias\">\r\n  <div class=\"modal-dialog\" role=\"document\">\r\n    <div class=\"modal-content\">\r\n\r\n      <div class=\"modal-header\">\r\n        <button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Cerrar\">\r\n          <span aria-hidden=\"true\">&times;<\/span>\r\n        <\/button>\r\n        <h4 class=\"modal-title\" id=\"modalGratis3Title\">Plan Familiar de Emergencias<\/h4>\r\n      <\/div>\r\n\r\n      <div class=\"modal-body-curso-gratis\">\r\n\r\n        <!-- AVISO DE MANTENIMIENTO (se muestra\/oculta segun el interruptor del script) -->\r\n        <div class=\"aviso-mantenimiento\" style=\"display:none; text-align:center; padding:60px 20px;\">\r\n          <i class=\"bi bi-tools\" style=\"font-size:48px; color:#DB0A13;\"><\/i>\r\n          <h4 style=\"margin-top:20px; color:#12294B;\">EN MANTENIMIENTO<\/h4>\r\n          <p style=\"color:#555; font-size:15px;\">Pronto estar\u00e1 disponible para la comunidad.<\/p>\r\n        <\/div>\r\n\r\n        <div class=\"curso-stepper\" style=\"display: flex; justify-content: space-between; font-weight: bold;\">\r\n          <span class=\"step active\" data-step=\"1\">1. <i class=\"bi bi-play-btn-fill\"><\/i><\/span>\r\n          <span class=\"step\" data-step=\"2\">2. <i class=\"bi bi-ui-checks\"><\/i><\/span>\r\n          <span class=\"step\" data-step=\"3\">3. <i class=\"bi bi-person-check-fill\"><\/i><\/span>\r\n          <span class=\"step\" data-step=\"4\">4. <i class=\"bi bi-award-fill\"><\/i><\/span>\r\n        <\/div>\r\n\r\n        <div class=\"fase-contenido fase-video\" data-fase=\"1\">\r\n          <div class=\"embed-responsive embed-responsive-16by9\">\r\n            <div class=\"yt-player-container\"><\/div>\r\n          <\/div>\r\n           <p class=\"msg-video\" style=\"display: none;\"><i class=\"bi bi-info-circle-fill\"><\/i>\r\n            Debes terminar de ver el video por completo para poder continuar.\r\n          <\/p>\r\n        <\/div>\r\n\r\n        <div class=\"fase-contenido fase-quiz\" data-fase=\"2\" style=\"display: none;\">\r\n          <div class=\"quiz-preguntas\"><\/div>\r\n          <p class=\"msg-quiz\"><\/p>\r\n        <\/div>\r\n\r\n        <div class=\"fase-contenido fase-datos\" data-fase=\"3\" style=\"display: none;\">\r\n          <h5>Paso 3: Ingresa tus datos para el certificado<\/h5>\r\n          <form class=\"form-datos\" autocomplete=\"off\">\r\n            <div class=\"form-group\">\r\n              <label for=\"inputNombre3\">Nombres y Apellidos completos:<\/label>\r\n              <input type=\"text\" class=\"form-control input-nombre\" id=\"inputNombre3\"\r\n                     placeholder=\"Ej. PEREZ JUAN DAVID\" autocomplete=\"off\" data-lpignore=\"true\" required>\r\n            <\/div>\r\n\r\n            <div class=\"form-group\">\r\n              <label for=\"selectTipoDoc3\">Tipo de Documento:<\/label>\r\n              <select class=\"form-control select-tipo-doc\" id=\"selectTipoDoc3\" autocomplete=\"off\">\r\n                <option value=\"CC\">C\u00e9dula de Ciudadan\u00eda (CC)<\/option>\r\n                <option value=\"TI\">Tarjeta de Identidad (TI)<\/option>\r\n                <option value=\"CE\">C\u00e9dula de Extranjer\u00eda (CE)<\/option>\r\n                <option value=\"PA\">Pasaporte (PA)<\/option>\r\n              <\/select>\r\n            <\/div>\r\n\r\n            <div class=\"form-group\">\r\n              <label for=\"inputDocumento3\">N\u00famero de Documento (Solo n\u00fameros):<\/label>\r\n              <input type=\"text\" class=\"form-control input-documento\" id=\"inputDocumento3\"\r\n                     placeholder=\"Ej. 1001234567\" pattern=\"[0-9]+\" autocomplete=\"off\" data-lpignore=\"true\" required>\r\n            <\/div>\r\n          <\/form>\r\n          <p class=\"msg-datos\" ><i class=\"bi bi-exclamation-triangle-fill\"><\/i>\r\n            Por favor llena todos los campos correctamente (el documento debe ser solo n\u00fameros).\r\n          <\/p>\r\n        <\/div>\r\n\r\n        <div class=\"fase-contenido fase-certificado\" data-fase=\"4\" style=\"display: none;\">\r\n           <div style=\"text-align: center;\">\r\n\t\t\t\t<canvas class=\"cert-canvas\"><\/canvas>\r\n\t\t\t<\/div>\r\n        <\/div>\r\n\r\n      <\/div>\r\n\r\n      <div class=\"modal-footer\">\r\n        <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\r\n        <button type=\"button\" class=\"btn btn-descargar-cert\" style=\"display:none;\">\r\n          Descargar certificado (PDF)\r\n        <\/button>\r\n        <button type=\"button\" class=\"btn btn-siguiente\">Siguiente<\/button>\r\n      <\/div>\r\n\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<style>\r\n  .modal-body-curso-gratis {\r\n    position: relative;\r\n  }\r\n\r\n  .msg-video,\r\n  .msg-quiz,\r\n  .msg-datos {\r\n   display: flex;\r\n  align-items: center;\r\n  gap: 12px;\r\n\r\n  \/* Posicionamiento flotante fijo (Esquina superior derecha) *\/\r\n   position: fixed;\r\n   top: 50px;\r\n   right: 10px;\r\n   z-index: 9999;\r\n   width: max-content;\r\n   max-width: max-content;\r\n   min-width: 280px;\r\n\r\n  \/* Espaciado y bordes *\/\r\n  padding: 14px 18px;\r\n  border-radius: 15px;\r\n\r\n  \/* Tipograf\u00eda y colores base *\/\r\n  font-size: 14px;\r\n  line-height: 1.4;\r\n  color: #333333;\r\n  background-color: #ffffff;\r\n\r\n  \/* Sombra suave y profesional *\/\r\n  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);\r\n  }\r\n @media (max-width: 700px){\r\n\t .msg-video,\r\n\t .msg-quiz, \r\n\t .msg-datos{\r\n\t\t position: absolute;\r\n\t\ttop: 0px;\r\n        left: 4%;\r\n\t\tmax-width: 360px;\r\n\t }\r\n\t}\r\n  .msg-video[style*=\"display: flex\"],\r\n  .msg-quiz[style*=\"display: flex\"],\r\n  .msg-datos[style*=\"display: flex\"] {\r\n    display: flex !important;\r\n  }\r\n\r\n  .msg-video::before,\r\n  .msg-quiz::before,\r\n  .msg-datos::before {\r\n    flex-shrink: 0;\r\n    font-size: 16px;\r\n    line-height: 1;\r\n  }\r\n\r\n  .msg-video, \r\n  .msg-quiz,\r\n  .msg-datos {\r\n    background: #DB0A13;\r\n    color: white;\r\n  }\r\n\r\n  @keyframes msgPopIn {\r\n    0%   { opacity: 0; transform: translateX(-50%) translateY(-8px) scale(0.98); }\r\n    100% { opacity: 1; transform: translateX(-50%) translateY(0) scale(1); }\r\n  }\r\n\r\n  \/* Estilos de el form data para el certificado *\/\r\n  .form-datos {\r\n    width: 90%;\r\n    margin: 25px auto;\r\n  }\r\n\r\n  .form-datos .form-control {\r\n    width: 100%;\r\n    height: 46px;\r\n    padding: 10px 16px;\r\n    font-size: 14px;\r\n    color: #333333;\r\n    background-color: #ffffff;\r\n    border: 1px solid #e0e0e0;\r\n    border-radius: 10px;\r\n    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);\r\n    transition: border-color .2s ease, box-shadow .2s ease;\r\n  }\r\n\r\n  .form-datos label {\r\n    color: black !important;\r\n  }\r\n.felicitaciones-quiz-overlay {\r\n  display: none;\r\n  position: fixed;\r\n  top: 0; left: 0; right: 0; bottom: 0;\r\n  background: rgba(0, 0, 0, 0.55);\r\n  z-index: 10000;\r\n  align-items: center;\r\n  justify-content: center;\r\n}\r\n\r\n.felicitaciones-quiz-overlay[style*=\"display: flex\"] {\r\n  display: flex !important;\r\n}\r\n\r\n.felicitaciones-quiz-box {\r\n  background: #ffffff;\r\n  width: 90%;\r\n  max-width: 460px;\r\n  min-width: 400px;\r\n  border-radius: 20px;\r\n  padding: 32px 28px;\r\n  text-align: center;\r\n  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.3);\r\n}\r\n\r\n.felicitaciones-quiz-box p {\r\n  font-size: 17px;\r\n  font-weight: 600;\r\n  color: #12294B;\r\n  margin: 0 0 22px 0;\r\n  line-height: 1.5;\r\n}\r\n\r\n.felicitaciones-quiz-box .btn-ok-felicitaciones {\r\n  background: #DB0A13;\r\n  color: #ffffff;\r\n  border: none;\r\n  padding: 10px 42px;\r\n  border-radius: 12px;\r\n  font-weight: bold;\r\n  font-size: 15px;\r\n  cursor: pointer;\r\n  transition: filter .15s ease;\r\n}\r\n\r\n.felicitaciones-quiz-box .btn-ok-felicitaciones:hover {\r\n  filter: brightness(1.1);\r\n}\r\n\r\n@media (max-width: 500px) {\r\n  .felicitaciones-quiz-box {\r\n    min-width: unset;\r\n    width: 85%;\r\n  }\r\n}\r\n\t\/* fase certificado *\/\r\n\t.mibody .modal-80 .fase-certificado {\r\n    width: 100%;\r\n\t}\r\n\r\n.mibody .modal-80 .fase-certificado > div {\r\n  width: 100%;\r\n}\r\n\r\n.mibody .modal-80 .cert-canvas {\r\n  display: block;\r\n  width: 100%;\r\n  height: auto;\r\n  max-width: 580px;\r\n  margin: 0 auto;\r\n  border-radius: 4px;\r\n  box-shadow: 0 8px 30px rgba(0, 0, 0, .12);\r\n}\r\n\r\n\/* Red de seguridad: nada dentro del modal-body debe generar scroll horizontal *\/\r\n.mibody .modal-80 .modal-body-curso-gratis,\r\n.mibody .modal-80 .fase-contenido {\r\n  max-width: 100%;\r\n  overflow-x: hidden;\r\n}\r\n<\/style>\r\n\r\n<script>\r\n(function () {\r\n\r\n  \/\/ =====\r\n  \/\/ INTERRUPTOR: \r\n  const CURSOS_GRATIS_ACTIVOS = false;\r\n  \/\/ =====\r\n\r\n  if (!CURSOS_GRATIS_ACTIVOS) {\r\n    document.addEventListener('DOMContentLoaded', function () {\r\n      document.querySelectorAll('.modal[data-video-id]').forEach(function (modal) {\r\n        const aviso = modal.querySelector('.aviso-mantenimiento');\r\n        const stepper = modal.querySelector('.curso-stepper');\r\n        const fases = modal.querySelectorAll('.fase-contenido');\r\n        const footer = modal.querySelector('.modal-footer');\r\n\r\n        \/\/ Mostramos el aviso y ocultamos el resto del contenido del curso\r\n        if (aviso) aviso.style.display = 'block';\r\n        if (stepper) stepper.style.display = 'none';\r\n        fases.forEach(function (f) { f.style.display = 'none'; });\r\n\r\n        \/\/ En el footer solo dejamos el bot\u00f3n \"Cerrar\"\r\n        if (footer) {\r\n          footer.querySelectorAll('.btn-siguiente, .btn-descargar-cert').forEach(function (btn) {\r\n            btn.style.display = 'none';\r\n          });\r\n        }\r\n      });\r\n    });\r\n\r\n    \/\/ No seguimos ejecutando el resto del script (videos, quiz, certificados, etc.)\r\n    return;\r\n  }\r\n\r\n  const PREGUNTAS_POR_CURSO = {\r\n    modalGratis1:[\r\n  {\r\n    texto: '\u00bfQu\u00e9 es un fuego incipiente?',\r\n    opciones: [\r\n      { texto: 'Un incendio fuera de control que requiere bomberos', correcta: false },\r\n      { texto: 'La fase inicial de un fuego que puede ser controlado o extinguido con equipos port\u00e1tiles', correcta: true },\r\n      { texto: 'Un fuego producido \u00fanicamente por materiales qu\u00edmicos peligrosos', correcta: false }\r\n    ]\r\n  }\r\n],\r\n    modalGratis2: [\r\n      {\r\n        texto: '\u00bfCu\u00e1l es el primer paso ante una persona inconsciente que no respira?',\r\n        opciones: [\r\n          { texto: 'Darle agua para que reaccione', correcta: false },\r\n          { texto: 'Llamar a la l\u00ednea de emergencias e iniciar RCP', correcta: true }\r\n        ]\r\n      },\r\n      {\r\n        texto: '\u00bfCu\u00e1l es la frecuencia recomendada de compresiones tor\u00e1cicas en RCP?',\r\n        opciones: [\r\n          { texto: 'Entre 100 y 120 compresiones por minuto', correcta: true },\r\n          { texto: 'Entre 20 y 30 compresiones por minuto', correcta: false }\r\n        ]\r\n      }\r\n    ],\r\n    modalGratis3: [\r\n      {\r\n        texto: '\u00bfQu\u00e9 elemento es indispensable en un plan familiar de emergencias?',\r\n        opciones: [\r\n          { texto: 'Ignorar las rutas de evacuaci\u00f3n', correcta: false },\r\n          { texto: 'Definir un punto de encuentro seguro fuera de la vivienda', correcta: true }\r\n        ]\r\n      },\r\n      {\r\n        texto: '\u00bfCon qu\u00e9 frecuencia se recomienda practicar el simulacro familiar?',\r\n        opciones: [\r\n          { texto: 'Nunca es necesario practicarlo', correcta: false },\r\n          { texto: 'Al menos dos veces al a\u00f1o', correcta: true }\r\n        ]\r\n      }\r\n    ]\r\n  };\r\n\r\n  \/\/ ---------- Precarga del sello dorado (se usa en los 3 certificados) ----------\r\n  const selloImg = new Image();\r\n  selloImg.crossOrigin = 'anonymous';\r\n  selloImg.src = 'https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/07\/PLACA-Photoroom.png';\r\n\r\n  \/\/ ---------- Precarga de la firma (se usa en los 3 certificados) ----------\r\n  const firmaImg = new Image();\r\n  firmaImg.crossOrigin = 'anonymous';\r\n  firmaImg.src = 'https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/08\/FIRMA-TENIENTE-e1786640375242.png';\r\n\r\n  \/\/ ---------- Precarga de los 2 logos institucionales ----------\r\n  const logo1Img = new Image();\r\n  logo1Img.crossOrigin = 'anonymous';\r\n  logo1Img.src = 'https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2025\/01\/Escudo-2.png'; \/\/ <-- pon aqu\u00ed la URL real del logo 1\r\n\r\n  const logo2Img = new Image();\r\n  logo2Img.crossOrigin = 'anonymous';\r\n  logo2Img.src = 'https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/06\/acbocol.png'; \/\/ <-- pon aqu\u00ed la URL real del logo 2\r\n\r\n  \/\/ ---------- Utilidad: marco festoneado (bordes con \"ondas\" tipo diploma) ----------\r\n  function trazarBordeFestoneado(ctx, x, y, w, h, r) {\r\n    ctx.beginPath();\r\n    const nTop = Math.max(4, Math.round(w \/ (r * 2)));\r\n    const stepTop = w \/ nTop;\r\n    const nSide = Math.max(3, Math.round(h \/ (r * 2)));\r\n    const stepSide = h \/ nSide;\r\n\r\n    ctx.moveTo(x, y);\r\n    for (let i = 0; i < nTop; i++) {\r\n      const cx = x + stepTop * i + stepTop \/ 2;\r\n      ctx.arcTo(cx, y - r, x + stepTop * (i + 1), y, r);\r\n    }\r\n    for (let i = 0; i < nSide; i++) {\r\n      const cy = y + stepSide * i + stepSide \/ 2;\r\n      ctx.arcTo(x + w + r, cy, x + w, y + stepSide * (i + 1), r);\r\n    }\r\n    for (let i = 0; i < nTop; i++) {\r\n      const cx = x + w - stepTop * i - stepTop \/ 2;\r\n      ctx.arcTo(cx, y + h + r, x + w - stepTop * (i + 1), y + h, r);\r\n    }\r\n    for (let i = 0; i < nSide; i++) {\r\n      const cy = y + h - stepSide * i - stepSide \/ 2;\r\n      ctx.arcTo(x - r, cy, x, y + h - stepSide * (i + 1), r);\r\n    }\r\n    ctx.closePath();\r\n  }\r\n\r\n  \/\/ ---------- 2. Cargar la API de YouTube una sola vez ----------\r\n  const ytTag = document.createElement('script');\r\n  ytTag.src = 'https:\/\/www.youtube.com\/iframe_api';\r\n  const firstScriptTag = document.getElementsByTagName('script')[0];\r\n  firstScriptTag.parentNode.insertBefore(ytTag, firstScriptTag);\r\n\r\n  function esperarYouTubeAPI(callback) {\r\n    if (window.YT && window.YT.Player) {\r\n      callback();\r\n    } else {\r\n      setTimeout(function () { esperarYouTubeAPI(callback); }, 200);\r\n    }\r\n  }\r\n\r\n  \/\/ ---------- 3. Inicializar cada modal ----------\r\n  function mostrarAlerta(el, textoOpcional, autoOcultarMs) {\r\n    if (!el) return;\r\n    if (textoOpcional !== undefined) el.innerHTML = textoOpcional;\r\n\r\n    \/\/ Ocultamos y forzamos \"reflow\" para que, si ya estaba visible,\r\n    \/\/ la animaci\u00f3n se reinicie al volver a hacer clic.\r\n    el.style.display = 'none';\r\n    void el.offsetWidth;\r\n    el.style.display = 'flex';\r\n\r\n    clearTimeout(el._alertaTimeoutId);\r\n    el._alertaTimeoutId = setTimeout(function () {\r\n      el.style.display = 'none';\r\n    }, autoOcultarMs || 4000);\r\n  }\r\n\r\n  document.addEventListener('DOMContentLoaded', function () {\r\n    document.querySelectorAll('.modal[data-video-id]').forEach(inicializarModalCurso);\r\n  });\r\n\r\n  function inicializarModalCurso(modal) {\r\n    const videoId = modal.getAttribute('data-video-id');\r\n    const nombreCurso = modal.getAttribute('data-curso-nombre') || '';\r\n    const preguntas = PREGUNTAS_POR_CURSO[modal.id] || [];\r\n\r\n    let pasoActual = 1;\r\n    let videoVisto = false;\r\n    let ytPlayer = null;\r\n    let maxTiempoAlcanzado = 0;\r\n    let intervaloAntiAdelanto = null;\r\n    let quizVerificado = false; \/\/ true cuando ya se marc\u00f3 todo correcto y solo falta el 2do clic para avanzar\r\n\r\n    const btnSiguiente = modal.querySelector('.btn-siguiente');\r\n    const btnDescargarCert = modal.querySelector('.btn-descargar-cert');\r\n    const msgVideo = modal.querySelector('.msg-video');\r\n    const msgQuiz = modal.querySelector('.msg-quiz');\r\n    const msgDatos = modal.querySelector('.msg-datos');\r\n\tconst felicitacionesOverlay = modal.querySelector('.felicitaciones-quiz-overlay');\r\n\tconst btnOkFelicitaciones = modal.querySelector('.btn-ok-felicitaciones');\r\n    const playerContainer = modal.querySelector('.yt-player-container');\r\n    const quizContainer = modal.querySelector('.quiz-preguntas');\r\n    const inputNombre = modal.querySelector('.input-nombre');\r\n    const inputDocumento = modal.querySelector('.input-documento');\r\n    const selectTipoDoc = modal.querySelector('.select-tipo-doc');\r\n    const canvas = modal.querySelector('.cert-canvas');\r\n\r\n    if (quizContainer) {\r\n      quizContainer.innerHTML = '';\r\n      preguntas.forEach(function (pregunta, i) {\r\n        const div = document.createElement('div');\r\n        div.className = 'pregunta';\r\n        div.style.marginBottom = '15px';\r\n        div.style.padding = '5px';\r\n        let html = '<p>' + (i + 1) + '. ' + pregunta.texto + '<\/p>';\r\n        pregunta.opciones.forEach(function (opcion) {\r\n          html += '<label><input type=\"radio\" name=\"p' + i + '-' + modal.id + '\" value=\"' +\r\n            (opcion.correcta ? 'correcta' : 'incorrecta') + '\"> ' + opcion.texto + '<\/label><br>';\r\n        });\r\n        div.innerHTML = html;\r\n        quizContainer.appendChild(div);\r\n      });\r\n    }\r\n\r\n    if (quizContainer) {\r\n      quizContainer.addEventListener('change', function (e) {\r\n        if (e.target && e.target.type === 'radio') {\r\n          const bloquePregunta = e.target.closest('.pregunta');\r\n          if (bloquePregunta) {\r\n            bloquePregunta.classList.remove('respuesta-incorrecta', 'respuesta-correcta');\r\n          }\r\n          \/\/ Cualquier cambio de respuesta invalida una verificaci\u00f3n previa\r\n          quizVerificado = false;\r\n        }\r\n      });\r\n    }\r\n\r\n    \/\/ Configuraci\u00f3n de validaci\u00f3n por tipo de documento\r\n    const CONFIG_DOCUMENTO = {\r\n      CC: { alfanumerico: false, maxLength: 10, placeholder: 'Ej. 1001234567' },\r\n      TI: { alfanumerico: false, maxLength: 10, placeholder: 'Ej. 1001234567' },\r\n      CE: { alfanumerico: false, maxLength: 10, placeholder: 'Ej. 1001234567' },\r\n      PA: { alfanumerico: true, maxLength: 9, placeholder: 'Ej. AAB123456' }\r\n    };\r\n\r\n    function filtrarDocumentoSegunTipo() {\r\n      if (!inputDocumento || !selectTipoDoc) return;\r\n\r\n      const tipo = selectTipoDoc.value;\r\n      const config = CONFIG_DOCUMENTO[tipo] || CONFIG_DOCUMENTO.CC;\r\n\r\n      if (config.alfanumerico) {\r\n        inputDocumento.value = inputDocumento.value.replace(\/[^a-zA-Z0-9]\/g, '').toUpperCase().slice(0, config.maxLength);\r\n      } else {\r\n        inputDocumento.value = inputDocumento.value.replace(\/[^0-9]\/g, '').slice(0, config.maxLength);\r\n      }\r\n    }\r\n\r\n    function aplicarConfigDocumento() {\r\n      if (!inputDocumento || !selectTipoDoc) return;\r\n\r\n      const tipo = selectTipoDoc.value;\r\n      const config = CONFIG_DOCUMENTO[tipo] || CONFIG_DOCUMENTO.CC;\r\n\r\n      inputDocumento.setAttribute('maxlength', config.maxLength);\r\n      inputDocumento.setAttribute('placeholder', config.placeholder);\r\n\r\n      if (config.alfanumerico) {\r\n        inputDocumento.removeAttribute('pattern');\r\n      } else {\r\n        inputDocumento.setAttribute('pattern', '[0-9]{1,' + config.maxLength + '}');\r\n      }\r\n    }\r\n\r\n    if (inputDocumento) {\r\n      inputDocumento.addEventListener('input', filtrarDocumentoSegunTipo);\r\n    }\r\n   if (inputNombre) {\r\n  inputNombre.addEventListener('input', function () {\r\n    const cursor = inputNombre.selectionStart;\r\n    const valorPrevio = inputNombre.value;\r\n\r\n    \/\/ Solo letras (con tildes y \u00d1) y espacios. Bloquea n\u00fameros y s\u00edmbolos -.}+#$%&\/()\r\n    let valor = valorPrevio.toUpperCase().replace(\/[^A-Z\u00c1\u00c9\u00cd\u00d3\u00da\u00d1\u00dc\\s]\/g, '');\r\n\r\n    \/\/ Evita espacios m\u00faltiples seguidos\r\n    valor = valor.replace(\/\\s{2,}\/g, ' ');\r\n\r\n    const diferencia = valorPrevio.length - valor.length;\r\n    inputNombre.value = valor;\r\n    const nuevaPos = Math.max(0, cursor - diferencia);\r\n    inputNombre.setSelectionRange(nuevaPos, nuevaPos);\r\n  });\r\n}\r\n\r\n    if (selectTipoDoc) {\r\n      selectTipoDoc.addEventListener('change', function () {\r\n        inputDocumento.value = '';\r\n        aplicarConfigDocumento();\r\n      });\r\n\r\n      aplicarConfigDocumento();\r\n    }\r\n\r\n    if (window.jQuery) {\r\n      jQuery(modal).on('show.bs.modal', function () {\r\n        reiniciarCurso();\r\n        esperarYouTubeAPI(function () {\r\n          if (!ytPlayer) crearPlayer();\r\n        });\r\n      });\r\n\r\n      jQuery(modal).on('hidden.bs.modal', function () {\r\n        reiniciarCurso();\r\n        detenerMonitoreoAntiAdelanto(); \/\/ por seguridad, aunque reiniciarCurso ya lo hace\r\n        if (ytPlayer && ytPlayer.destroy) {\r\n          ytPlayer.destroy();\r\n          ytPlayer = null;\r\n        }\r\n      });\r\n    }\r\n\r\n    function crearPlayer() {\r\n      ytPlayer = new YT.Player(playerContainer, {\r\n        height: '450',\r\n        width: '100%',\r\n        videoId: videoId,\r\n        playerVars: {\r\n          playsinline: 1,\r\n          rel: 0,\r\n          modestbranding: 1,\r\n          disablekb: 1   \/\/ desactiva atajos de teclado (flechas, espacio para saltar, etc.)\r\n        },\r\n        events: {\r\n          onReady: function () {\r\n            iniciarMonitoreoAntiAdelanto();\r\n          },\r\n          onStateChange: function (event) {\r\n            if (event.data === YT.PlayerState.ENDED) {\r\n              const duracion = (typeof ytPlayer.getDuration === 'function') ? ytPlayer.getDuration() : 0;\r\n              const MARGEN_FINAL = 1.5; \/\/ segundos de tolerancia al final del video\r\n\r\n              \/\/ Si el usuario salt\u00f3 directamente al final (sin haber visto realmente\r\n              \/\/ hasta ah\u00ed), maxTiempoAlcanzado quedar\u00e1 muy por debajo de la duraci\u00f3n real.\r\n              if (duracion > 0 && maxTiempoAlcanzado < duracion - MARGEN_FINAL) {\r\n                \/\/ \"lo regresamos al punto donde va el video a la fuerza\r\n                ytPlayer.seekTo(maxTiempoAlcanzado, true);\r\n                ytPlayer.playVideo();\r\n                return; \/\/ no marcamos el video como visto\r\n              }\r\n\r\n              videoVisto = true;\r\n              msgVideo.style.display = 'none';\r\n              detenerMonitoreoAntiAdelanto();\r\n            }\r\n          }\r\n        }\r\n      });\r\n    }\r\n\r\n    function iniciarMonitoreoAntiAdelanto() {\r\n      if (intervaloAntiAdelanto) return;\r\n\r\n      intervaloAntiAdelanto = setInterval(function () {\r\n        if (!ytPlayer || typeof ytPlayer.getCurrentTime !== 'function') return;\r\n\r\n        const actual = ytPlayer.getCurrentTime();\r\n        const TOLERANCIA = 1; \/\/ margen en segundos por el intervalo de sondeo\r\n\r\n        if (actual > maxTiempoAlcanzado + TOLERANCIA) {\r\n          \/\/ El usuario adelant\u00f3 (arrastrando la barra): lo regresamos\r\n          ytPlayer.seekTo(maxTiempoAlcanzado, true);\r\n        } else if (actual > maxTiempoAlcanzado) {\r\n          \/\/ Avance normal viendo el video: actualizamos el m\u00e1ximo alcanzado\r\n          maxTiempoAlcanzado = actual;\r\n        }\r\n        \/\/ Si actual < maxTiempoAlcanzado, el usuario retrocedi\u00f3: permitido, no hacemos nada.\r\n      }, 300);\r\n    }\r\n\r\n    function detenerMonitoreoAntiAdelanto() {\r\n      if (intervaloAntiAdelanto) {\r\n        clearInterval(intervaloAntiAdelanto);\r\n        intervaloAntiAdelanto = null;\r\n      }\r\n    }\r\n\r\n    function reiniciarCurso() {\r\n      pasoActual = 1;\r\n      videoVisto = false;\r\n      maxTiempoAlcanzado = 0;\r\n      quizVerificado = false;\r\n      detenerMonitoreoAntiAdelanto();\r\n\r\n      modal.querySelectorAll('.fase-contenido').forEach(function (f) { f.style.display = 'none'; });\r\n      modal.querySelector('[data-fase=\"1\"]').style.display = 'block';\r\n\r\n      modal.querySelectorAll('input[type=radio]').forEach(function (r) { r.checked = false; });\r\n      modal.querySelectorAll('.quiz-preguntas .pregunta').forEach(function (bloque) {\r\n        bloque.classList.remove('respuesta-incorrecta', 'respuesta-correcta');\r\n      });\r\n      if (inputNombre) inputNombre.value = '';\r\n      if (inputDocumento) inputDocumento.value = '';\r\n      if (selectTipoDoc) selectTipoDoc.selectedIndex = 0;\r\n      if (inputDocumento) inputDocumento.value = '';\r\n      aplicarConfigDocumento();\r\n\r\n      msgVideo.style.display = 'none';\r\n      msgQuiz.style.display = 'none';\r\n      msgDatos.style.display = 'none';\r\n\t if (felicitacionesOverlay) felicitacionesOverlay.style.display = 'none';\r\n      btnSiguiente.style.display = 'inline-block';\r\n      btnDescargarCert.style.display = 'none';\r\n\r\n      modal.querySelectorAll('.curso-stepper .step').forEach(function (s) {\r\n        s.classList.toggle('active', s.dataset.step === '1');\r\n      });\r\n    }\r\n\r\n    btnSiguiente.addEventListener('click', function () {\r\n\r\n      \/\/ FASE 1: exige haber visto el video completo (evento ENDED de YouTube)\r\n      if (pasoActual === 1) {\r\n        if (!videoVisto) {\r\n          mostrarAlerta(msgVideo);\r\n          return;\r\n        }\r\n        avanzarPaso(2);\r\n\r\n      \/\/ FASE 2: evaluaci\u00f3n\r\n      } else if (pasoActual === 2) {\r\n        const bloquesPregunta = modal.querySelectorAll('.quiz-preguntas .pregunta');\r\n\r\n        \/\/ Paso 1: verificar que TODAS las preguntas tengan una opci\u00f3n marcada.\r\n        \/\/ Mientras falte alguna, no se marca ni correcto ni incorrecto en ninguna.\r\n        const todasRespondidas = Array.from(bloquesPregunta).every(function (bloque) {\r\n          return !!bloque.querySelector('input[type=radio]:checked');\r\n        });\r\n\r\n       if (!todasRespondidas) {\r\n\t\t  mostrarAlerta(msgQuiz, '<i class=\"bi bi-exclamation-circle-fill\"><\/i> Debes responder todas las preguntas.');\r\n\t\t  return;\r\n\t\t}\r\n\r\n        \/\/ Paso 2: ya est\u00e1n todas respondidas, ahora s\u00ed se eval\u00faa cada una\r\n        let todasCorrectas = true;\r\n        bloquesPregunta.forEach(function (bloque) {\r\n          const marcada = bloque.querySelector('input[type=radio]:checked');\r\n          bloque.classList.remove('respuesta-incorrecta', 'respuesta-correcta');\r\n\r\n          if (marcada.value === 'correcta') {\r\n            bloque.classList.add('respuesta-correcta');\r\n          } else {\r\n            bloque.classList.add('respuesta-incorrecta');\r\n            todasCorrectas = false;\r\n          }\r\n        });\r\n\r\n       if (!todasCorrectas) {\r\n\t\t  quizVerificado = false;\r\n\t\t  mostrarAlerta(msgQuiz, '<i class=\"bi bi-x-circle-fill\"><\/i> Tienes respuestas incorrectas marcadas en rojo. Corr\u00edgelas e intenta de nuevo.');\r\n\t\t  return;\r\n\t\t}\r\n        \/\/Aqui muestra el modal de felicitacione spor responder todas las preguntas bien\r\n        if (!quizVerificado) {\r\n\t\t  quizVerificado = true;\r\n\t\t  msgQuiz.style.display = 'none';\r\n\t\t  if (felicitacionesOverlay) felicitacionesOverlay.style.display = 'flex'; \/\/ NUEVO\r\n\t\t  return;\r\n\t\t}\r\n\r\n        \/\/ volvi\u00f3 a dar clic en \"Siguiente\"): ahora s\u00ed avanzamos.\r\n        msgQuiz.style.display = 'none';\r\n        avanzarPaso(3);\r\n\r\n      \/\/ FASE 3: datos personales\r\n      } else if (pasoActual === 3) {\r\n        const nombre = inputNombre.value.trim().toUpperCase();\r\n        const doc = inputDocumento.value.trim();\r\n        const tipoDoc = selectTipoDoc.value;\r\n\r\n        if (nombre === '' || doc === '') {\r\n          mostrarAlerta(msgDatos);\r\n          return;\r\n        }\r\n\r\n        msgDatos.style.display = 'none';\r\n        generarCertificadoCanvas(canvas, nombre, tipoDoc + ': ' + doc, nombreCurso);\r\n        avanzarPaso(4);\r\n        btnSiguiente.style.display = 'none';\r\n        btnDescargarCert.style.display = 'inline-block';\r\n\r\n        \/\/ Se borran de inmediato los campos: ya quedaron dibujados en el\r\n        \/\/ canvas (imagen de p\u00edxeles), no se necesita conservarlos.\r\n        inputNombre.value = '';\r\n        inputDocumento.value = '';\r\n      }\r\n    });\r\n\r\n    \/\/ Descargar el certificado dibujado en el canvas como PDF tama\u00f1o carta\r\n    if (btnDescargarCert) {\r\n      btnDescargarCert.addEventListener('click', function () {\r\n        descargarCertificadoPDF(canvas, nombreCurso);\r\n      });\r\n    }\r\n\t \/\/ Modal de felicitaciones Quiz\r\n\tif (btnOkFelicitaciones) {\r\n\t  btnOkFelicitaciones.addEventListener('click', function () {\r\n\t\tfelicitacionesOverlay.style.display = 'none';\r\n\t  });\r\n\t}\r\n    function avanzarPaso(paso) {\r\n      modal.querySelector('[data-fase=\"' + pasoActual + '\"]').style.display = 'none';\r\n      modal.querySelector('[data-fase=\"' + paso + '\"]').style.display = 'block';\r\n\r\n      modal.querySelectorAll('.curso-stepper .step').forEach(function (step) {\r\n        step.classList.toggle('active', parseInt(step.dataset.step, 10) === paso);\r\n      });\r\n      pasoActual = paso;\r\n    }\r\n  }\r\n\r\n  \/\/ ---------- 4. Certificado en Canvas (a prueba de inspeccionar consola) ----------\r\n\r\n  function generarCertificadoCanvas(canvas, nombre, documento, nombreCurso) {\r\n    const W = 1056;\r\n    const H = 816;\r\n    const escala = Math.min(4, Math.max(2.5, window.devicePixelRatio || 1));\r\n\r\n    canvas.width = W * escala;\r\n    canvas.height = H * escala;\r\n\r\n    const ctx = canvas.getContext('2d');\r\n    ctx.setTransform(1, 0, 0, 1, 0, 0);\r\n    ctx.scale(escala, escala);\r\n    ctx.imageSmoothingEnabled = true;\r\n    ctx.imageSmoothingQuality = 'high';\r\n\r\n\t\/\/ FONDO BLANCO\r\n\t\tctx.fillStyle = '#FFFFFF';\r\n\t\tctx.fillRect(0, 0, W, H);\r\n\r\n\t\tdibujarFormasRojas(ctx, W, H);\r\n\r\n    ctx.textAlign = 'center';\r\n\t  \r\n\t\/\/ ---------- Logos institucionales (izquierda) ----------\r\n\tdibujarLogo(ctx, logo1Img, 100, 80, 160, 160);\r\n\tdibujarLogo(ctx, logo2Img, 950, 90, 150, 155);\r\n \r\n\tctx.fillStyle = '#000000';\r\n\tctx.font = '600 25px \"Poppins\", Arial, sans-serif';\r\n\tctx.fillText('BOMBEROS DE COLOMBIA', W \/ 2, 55);\r\n\r\n\tctx.fillStyle = '#000000';\r\n\tctx.font = '500 20px \"Poppins\", Arial, sans-serif';\r\n\tctx.fillText('Cuerpo de Bomberos Voluntarios de Yopal', W \/ 2, 75);\r\n\r\n\tctx.fillStyle = '#000000';\r\n\tctx.font = '500 20px \"Poppins\", Arial, sans-serif';\r\n\tctx.fillText('Instituci\u00f3n de Educaci\u00f3n para el Trabajo y Desarrollo Humano', W \/ 2, 95);\r\n\t \r\n\tctx.fillStyle = '#000000';\r\n\tctx.font = '500 20px \"Poppins\", Arial, sans-serif';\r\n\tctx.fillText('Academia de Bomberos de la Orinoqu\u00eda Colombiana', W \/ 2, 115);\r\n\t\r\n\tctx.fillStyle = '#000000';\r\n\tctx.font = '400 12px \"Poppins\", Arial, sans-serif';\r\n\tctx.fillText('Resoluci\u00f3n No. 0906 del 06 de octubre de 2022', W \/ 2, 130);\r\n\t  \r\n\tctx.fillStyle = '#000000';\r\n\tctx.font = '400 14px \"Poppins\", Arial, sans-serif';\r\n\tctx.fillText('Impartido y certificado por la Academia ACBOCOL en modalidad 100% virtual, a trav\u00e9s del', W \/ 2, 170);\r\n\r\n\tctx.fillText('portal oficial del Cuerpo de Bomberos Voluntarios de Yopal, secci\u00f3n ACBOCOL.', W \/ 2, 185);\r\n\t  \r\n\/\/ Fecha\r\n\/\/ const fecha = new Date().toLocaleDateString('es-CO', { year: 'numeric', month: 'long', day: 'numeric' });\r\n\/\/ ctx.fillStyle = '#5A6D8A';\r\n\/\/ ctx.font = '12px \"Poppins\", Arial';\r\n\/\/ ctx.fillText(('Presentado el ' + fecha).toUpperCase(), W \/ 2, 600);\r\n\r\n\r\n\/\/ Certificamos que\r\nctx.fillStyle = '#000000';\r\nctx.font = 'italic 18px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('Hace Constar que', W \/ 2, 215);\r\n\r\n\/\/ Nombre\r\nlet fontSizeNombre = 53;\r\nctx.font = `400 ${fontSizeNombre}px Georgia, serif`;\r\nwhile (ctx.measureText(nombre).width > 750 && fontSizeNombre > 28) {\r\n  fontSizeNombre -= 2;\r\n  ctx.font = `400 ${fontSizeNombre}px Georgia, serif`;\r\n}\r\nctx.fillStyle = '#000000';\r\nctx.fillText(nombre, W \/ 2, 270);\r\n\r\n\/\/ Documento (c\u00e9dula) - se mantiene en Georgia serif\r\nctx.fillStyle = '#000000';\r\nctx.font = '20px Georgia, serif';\r\nctx.fillText(documento.toUpperCase(), W \/ 2, 295);\r\n\r\nctx.fillStyle = '#000000';\r\nctx.font = '14px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('ha completado exitosamente el curso:', W \/ 2, 325);\r\n\r\n\/\/ Curso en caja - bold\r\nctx.font = 'bold 30px \"Poppins\", Arial, sans-serif';\r\nconst cursoY = 365;\r\ndibujarTextoConSalto(ctx, nombreCurso, W \/ 2, cursoY, 700, 30, '#1A202C');\r\n\r\n\/\/ ---------- Firma (firma del teniente) - IZQUIERDA ----------\r\nconst firmaXTeniente = W \/ 2 - 250;\r\n\r\nif (firmaImg.complete && firmaImg.naturalWidth > 0) {\r\n  const firmaAncho = 140;\r\n  const firmaAlto = 90;\r\n  try {\r\n    ctx.drawImage(\r\n      firmaImg,\r\n      firmaXTeniente - firmaAncho \/ 2,\r\n      730 - firmaAlto - 5,\r\n      firmaAncho,\r\n      firmaAlto\r\n    );\r\n  } catch (e) {}\r\n}\r\nctx.strokeStyle = '#000000';\r\nctx.lineWidth = 1;\r\nctx.beginPath();\r\nctx.moveTo(firmaXTeniente - 100, 700);\r\nctx.lineTo(firmaXTeniente + 100, 700);\r\nctx.stroke();\r\n\r\nctx.fillStyle = '#000000';\r\nctx.font = 'bold 13px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('Firma', firmaXTeniente, 715);\r\n\r\nctx.fillStyle = '#000000';\r\nctx.font = 'bold 11px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('TE. RAFAEL ROJAS RICO', firmaXTeniente, 728);\r\n\r\nctx.fillStyle = '#000000';\r\nctx.font = '11px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('Comandante', firmaXTeniente, 738);\r\n\r\nctx.fillStyle = '#000000';\r\nctx.font = '11px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('Cuerpo de Bomberos de Yopal', firmaXTeniente, 748);\r\n\r\n\r\n\/\/ ---------- Firma (firma Bro. Guillermo) - DERECHA ---------- \/\/\r\nconst firmaXGuillermo = W \/ 2 + 250;\r\n\r\nif (firmaImg.complete && firmaImg.naturalWidth > 0) {\r\n  const firmaAncho = 140;\r\n  const firmaAlto = 90;\r\n  try {\r\n    ctx.drawImage(\r\n      firmaImg,\r\n      firmaXGuillermo - firmaAncho \/ 2,\r\n      730 - firmaAlto - 5,\r\n      firmaAncho,\r\n      firmaAlto\r\n    );\r\n  } catch (e) {}\r\n}\r\nctx.strokeStyle = '#000000';\r\nctx.lineWidth = 1;\r\nctx.beginPath();\r\nctx.moveTo(firmaXGuillermo - 100, 700);\r\nctx.lineTo(firmaXGuillermo + 100, 700);\r\nctx.stroke();\r\n\r\nctx.fillStyle = '#000000';\r\nctx.font = 'bold 13px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('Firma', firmaXGuillermo, 715);\r\n\r\nctx.fillStyle = '#000000';\r\nctx.font = 'bold 11px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('BRO. GUILLERMO GUARIN', firmaXGuillermo, 728);\r\n\r\nctx.fillStyle = '#000000';\r\nctx.font = '11px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('Director Acad\u00e9mico', firmaXGuillermo, 738);\r\n\r\nctx.fillStyle = '#000000';\r\nctx.font = '11px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('Cuerpo de Bomberos de Yopal', firmaXGuillermo, 748);\t  \r\n\t  \r\n\/\/ Sello dorado\r\nconst selloTam = 300;\r\nconst selloAlto = selloTam * (530 \/ 415);\r\nconst selloX = W \/ 2 - selloTam \/ 2;\r\nconst selloY = 400; \r\nctx.drawImage(selloImg, selloX, selloY, selloTam, selloAlto);\r\n\r\n\/\/ Footer\r\nctx.fillStyle = '#000000';\r\nctx.font = 'italic 11px \"Poppins\", Arial, sans-serif';\r\nctx.fillText('Este curso ha sido aprobado con 3 horas de formaci\u00f3n virtual', W \/ 2, 784);\r\nctx.fillText('a trav\u00e9s de la plataforma oficial de ACBOCOL \u2022 (https:\/\/www.bomberosyopal.com\/inicio\/acbocolacademia)', W \/ 2, 800);\r\n  }\r\n  function dibujarTextoConSalto(ctx, texto, x, y, anchoMaximo, alturaLinea, color) {\r\n    ctx.fillStyle = color || '#000000';\r\n    const palabras = texto.split(' ');\r\n    let linea = ''; let lineas = [];\r\n    palabras.forEach(p => {\r\n      const prueba = linea + p + ' ';\r\n      if (ctx.measureText(prueba).width > anchoMaximo && linea !== '') {\r\n        lineas.push(linea.trim()); linea = p + ' ';\r\n      } else { linea = prueba; }\r\n    });\r\n    lineas.push(linea.trim());\r\n    lineas.forEach((l, i) => ctx.fillText(l, x, y + i * alturaLinea));\r\n  }\r\n\r\n  function dibujarLogo(ctx, img, cx, cy, ancho, alto) {\r\n    if (img && img.complete && img.naturalWidth > 0) {\r\n      try {\r\n        ctx.drawImage(img, cx - ancho \/ 2, cy - alto \/ 2, ancho, alto);\r\n      } catch (e) {}\r\n    } else {\r\n      \/\/ Placeholder mientras se configura el logo real\r\n      ctx.save();\r\n      ctx.strokeStyle = '#000000';\r\n      ctx.setLineDash([4, 4]);\r\n      ctx.lineWidth = 1.5;\r\n      ctx.strokeRect(cx - ancho \/ 2, cy - alto \/ 2, ancho, alto);\r\n      ctx.setLineDash([]);\r\n      ctx.fillStyle = '#000000';\r\n      ctx.font = '11px \"Inter\", Arial';\r\n      ctx.textAlign = 'center';\r\n      ctx.fillText('LOGO', cx, cy + 4);\r\n      ctx.restore();\r\n    }\r\n  }\r\nfunction dibujarFormasRojas(ctx, W, H) {\r\n  const ROJO = '#E2231A';\r\n\r\n  ctx.save();\r\n  ctx.fillStyle = ROJO;\r\n\r\n  \/\/ ---- Forma 1: esquina superior derecha ----\r\n  ctx.beginPath();\r\n  ctx.moveTo(W, 0);\r\n  ctx.lineTo(W * 0.80, 0);\r\n  ctx.bezierCurveTo(\r\n    W * 0.90, 0,\r\n    W, H * 0.14,\r\n    W, H * 0.40\r\n  );\r\n  ctx.closePath();\r\n  ctx.fill();\r\n\r\n ctx.beginPath();\r\n\t\r\n\t\r\n\/\/ inferior\r\nctx.fillStyle = \"#e31d2b\";\r\n\r\nctx.beginPath();\r\n\r\nctx.moveTo(0, H * 0.40);\r\n  ctx.bezierCurveTo(\r\n     W * 0.01, H * 0.50,\r\n     W * 0.01, H * 0.99,\r\n     W * 0.30, H\r\n);\r\n\r\nctx.lineTo(0, H);\r\nctx.closePath();\r\n\r\n\/\/ 4. Rellenar la forma\r\nctx.fill();\r\n}\r\n  \/\/ ---------- 5. Descargar el certificado como PDF tama\u00f1o carta ----------\r\n  function descargarCertificadoPDF(canvas, nombreCurso) {\r\n  if (!window.jspdf || !window.jspdf.jsPDF) {\r\n    alert('No se pudo cargar el generador de PDF. Revisa tu conexi\u00f3n a internet e intenta de nuevo.');\r\n    return;\r\n  }\r\n\r\n  const { jsPDF } = window.jspdf;\r\n\r\n  const pdf = new jsPDF({\r\n  orientation: 'landscape',\r\n  unit: 'mm',\r\n  format: 'letter'\r\n});\r\n\r\n  const anchoPagina = pdf.internal.pageSize.getWidth();\r\n  const altoPagina = pdf.internal.pageSize.getHeight();\r\n\r\n  \/\/ Sin m\u00e1rgenes: la imagen cubre la hoja completa (full bleed)\r\n  const imgData = canvas.toDataURL('image\/png', 1.0);\r\n  pdf.addImage(imgData, 'PNG', 0, 0, anchoPagina, altoPagina);\r\n\r\n  const nombreArchivo = 'certificado-' + nombreCurso\r\n    .toLowerCase()\r\n    .normalize('NFD').replace(\/[\\u0300-\\u036f]\/g, '')\r\n    .replace(\/[^a-z0-9]+\/g, '-')\r\n    .replace(\/(^-|-$)\/g, '') + '.pdf';\r\n\r\n  pdf.save(nombreArchivo);\r\n}\r\n\r\n})();\r\n<\/script>\n<p>  <!-- ==================== MODALES: Categor\u00edas de cursos ==================== --><\/p>\n<p>  <!-- MODAL: Gesti\u00f3n, liderazgo y comando --><\/p>\n<div class=\"modal fade modal-80\" id=\"modalGestion\" tabindex=\"-1\" role=\"dialog\">\n<div class=\"modal-dialog\" role=\"document\">\n<div class=\"modal-content\">\n<div class=\"modal-header\">\n          <button type=\"button\" class=\"close\" data-dismiss=\"modal\">&times;<\/button><\/p>\n<h4 class=\"modal-title\">Gesti\u00f3n, liderazgo y comando<\/h4>\n<\/p><\/div>\n<div class=\"modal-body\">\n          <span class=\"modal-badge\"><\/span><\/p>\n<div class=\"modal-curso-item\">\n<h5>Formaci\u00f3n de Bomberos<\/h5>\n<p>Capacitaci\u00f3n en t\u00e9cnicas esenciales de rescate, combate de incendios y atenci\u00f3n de emergencias.<\/p>\n<div class=\"curso-accion\">\n              <a href=\"https:\/\/docs.google.com\/forms\/d\/e\/1FAIpQLSewkGerhw6xBIcCkMnZ9R9A-je8HKvPEaWWVq9vTkIl6WEnCw\/viewform?usp=pp_url&#038;entry.1561490800=Formaci%C3%B3n+de+Bomberos\" target=\"_blank\" class=\"mibtn btn-preinscripcion\">Preinscripci\u00f3n<\/a><br \/>\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20el%20curso%20*Formaci\u00f3n%20de%20Bomberos*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<div class=\"modal-curso-item\">\n<h5>Gesti\u00f3n y Administraci\u00f3n de Cuerpos de Bomberos<\/h5>\n<p>Fundamentos del Sistema de Comando de Incidentes para la gesti\u00f3n de emergencias complejas.<\/p>\n<div class=\"curso-accion\">\n<a href=\"https:\/\/docs.google.com\/forms\/d\/e\/1FAIpQLSewkGerhw6xBIcCkMnZ9R9A-je8HKvPEaWWVq9vTkIl6WEnCw\/viewform?usp=pp_url&#038;entry.1561490800=Gesti%C3%B3n+y+Administraci%C3%B3n+de+Cuerpos+de+Bomberos\" target=\"_blank\" class=\"mibtn btn-preinscripcion\">Preinscripci\u00f3n<\/a><br \/>\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20el%20curso%20*Gesti\u00f3n%20y%20Administraci\u00f3n%20de%20Cuerpos%20de%20Bomberos*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<div class=\"modal-curso-item\">\n<h5>Sistema Comando de Incidentes (SCI) B\u00e1sico<\/h5>\n<p>Elaboraci\u00f3n de planes de acci\u00f3n para incidentes y gesti\u00f3n de recursos.<\/p>\n<div class=\"curso-accion\">\n<a href=\"https:\/\/docs.google.com\/forms\/d\/e\/1FAIpQLSewkGerhw6xBIcCkMnZ9R9A-je8HKvPEaWWVq9vTkIl6WEnCw\/viewform?usp=pp_url&#038;entry.1561490800=Sistema+Comando+de+Incidentes+(SCI)+B%C3%A1sico\" target=\"_blank\" class=\"mibtn btn-preinscripcion\">Preinscripci\u00f3n<\/a><br \/>\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20el%20curso%20*Sistema%20Comando%20de%20Incidentes%20(SCI)%20B\u00e1sico*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<div class=\"modal-curso-item\">\n<h5>Comunicaci\u00f3n Asertiva en Equipos de Trabajo <\/h5>\n<p>Desarrolla habilidades de escucha activa, empat\u00eda y di\u00e1logo efectivo dentro de cualquier organizaci\u00f3n.<\/p>\n<div class=\"curso-accion\">\n<a href=\"https:\/\/docs.google.com\/forms\/d\/e\/1FAIpQLSewkGerhw6xBIcCkMnZ9R9A-je8HKvPEaWWVq9vTkIl6WEnCw\/viewform?usp=pp_url&#038;entry.1561490800=Comunicaci%C3%B3n+Asertiva+en+Equipos+de+Trabajo\" target=\"_blank\" class=\"mibtn btn-preinscripcion\">Preinscripci\u00f3n<\/a><br \/>\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m%C3%A1s%20informaci%C3%B3n%20sobre%20el%20curso%20*Comunicaci%C3%B3n%20Asertiva%20en%20Equipos%20de%20Trabajo*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<div class=\"modal-curso-item\">\n<h5>Liderazgo y trabajo en equipo<\/h5>\n<p>Desarrolla capacidades para delegar tareas, resolver conflictos y potenciar el talento de tu equipo.<\/p>\n<div class=\"curso-accion\">\n<a href=\"https:\/\/docs.google.com\/forms\/d\/e\/1FAIpQLSewkGerhw6xBIcCkMnZ9R9A-je8HKvPEaWWVq9vTkIl6WEnCw\/viewform?usp=pp_url&#038;entry.1561490800=Liderazgo+y+trabajo+en+equipo\" target=\"_blank\" class=\"mibtn btn-preinscripcion\">Preinscripci\u00f3n<\/a><br \/>\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m%C3%A1s%20informaci%C3%B3n%20sobre%20el%20curso%20*Liderazgo%20y%20Trabajo%20en%20Equipo*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<div class=\"modal-curso-item\">\n<h5>Psicolog\u00eda de la emergencia<\/h5>\n<p>Aprende a brindar contenci\u00f3n emocional b\u00e1sica y estabilizar a personas en crisis o situaciones cr\u00edticas.<\/p>\n<div class=\"curso-accion\">\n<a href=\"https:\/\/docs.google.com\/forms\/d\/e\/1FAIpQLSewkGerhw6xBIcCkMnZ9R9A-je8HKvPEaWWVq9vTkIl6WEnCw\/viewform?usp=pp_url&#038;entry.1561490800=Psicolog%C3%ADa+de+la+emergencia\" target=\"_blank\" class=\"mibtn btn-preinscripcion\">Preinscripci\u00f3n<\/a><br \/>\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m%C3%A1s%20informaci%C3%B3n%20sobre%20el%20curso%20*Psicolog%C3%ADa%20de%20la%20Emergencia*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-footer\">\n          <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\n        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>  <!-- MODAL: Operaciones contra incendios --><\/p>\n<div class=\"modal fade modal-80\" id=\"modalIncendios\" tabindex=\"-1\" role=\"dialog\">\n<div class=\"modal-dialog\" role=\"document\">\n<div class=\"modal-content\">\n<div class=\"modal-header\">\n          <button type=\"button\" class=\"close\" data-dismiss=\"modal\">&times;<\/button><\/p>\n<h4 class=\"modal-title\">Operaciones contra incendios<\/h4>\n<\/p><\/div>\n<div class=\"modal-body\">\n          <span class=\"modal-badge\"><\/span><\/p>\n<div class=\"modal-curso-item\">\n<h5>Curso de Bombero Forestal<\/h5>\n<p>Introducci\u00f3n a las t\u00e9cnicas de ataque directo e indirecto en edificaciones.<\/p>\n<div class=\"curso-accion\">\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20el%20curso%20*Curso%20de%20Bombero%20Forestal*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<div class=\"modal-curso-item\">\n<h5>Investigaci\u00f3n de Incendios B\u00e1sico<\/h5>\n<p>Manejo del fuego en \u00e1reas naturales, l\u00edneas de control y seguridad del operador.<\/p>\n<div class=\"curso-accion\">\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20el%20curso%20*Investigaci\u00f3n%20de%20Incendios%20B\u00e1sico*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-footer\">\n          <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\n        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>  <!-- MODAL: Rescate t\u00e9cnico --><\/p>\n<div class=\"modal fade modal-80\" id=\"modalRescate\" tabindex=\"-1\" role=\"dialog\">\n<div class=\"modal-dialog\" role=\"document\">\n<div class=\"modal-content\">\n<div class=\"modal-header\">\n          <button type=\"button\" class=\"close\" data-dismiss=\"modal\">&times;<\/button><\/p>\n<h4 class=\"modal-title\">Rescate t\u00e9cnico<\/h4>\n<\/p><\/div>\n<div class=\"modal-body\">\n          <span class=\"modal-badge\"><\/span><\/p>\n<div class=\"modal-curso-item\">\n<h5>Rescate en Espacios Confinados<\/h5>\n<p>Capacitaci\u00f3n en t\u00e9cnicas de evaluaci\u00f3n de atm\u00f3sferas, ingreso seguro, monitoreo y extracci\u00f3n de v\u00edctimas en \u00e1reas reducidas o de dif\u00edcil acceso.<\/p>\n<div class=\"curso-accion\">\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20el%20curso%20*Rescate%20en%20Espacios%20Confinados*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<div class=\"modal-curso-item\">\n<h5>Rescate con Cuerda \u2013 Nivel Operaciones<\/h5>\n<p>Curso de Rescate con Cuerda \u2013 Nivel Operaciones enfocado en el dominio de anclajes, sistemas de ventaja mec\u00e1nica, descenso y ascenso en vertical o pendientes.<\/p>\n<div class=\"curso-accion\">\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20el%20curso%20*Rescate%20con%20Cuerda%20\u2013%20Nivel%20Operaciones*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-footer\">\n          <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\n        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>  <!-- MODAL: Materiales peligrosos --><\/p>\n<div class=\"modal fade modal-80\" id=\"modalMatpel\" tabindex=\"-1\" role=\"dialog\">\n<div class=\"modal-dialog\" role=\"document\">\n<div class=\"modal-content\">\n<div class=\"modal-header\">\n          <button type=\"button\" class=\"close\" data-dismiss=\"modal\">&times;<\/button><\/p>\n<h4 class=\"modal-title\">Materiales peligrosos y seguridad operacional<\/h4>\n<\/p><\/div>\n<div class=\"modal-body\">\n          <span class=\"modal-badge\"><\/span><\/p>\n<div class=\"modal-curso-item\">\n<h5>Materiales Peligrosos Nivel Advertencia<\/h5>\n<p>Reconocimiento de materiales peligrosos, identificaci\u00f3n y acciones de aislamiento.<\/p>\n<div class=\"curso-accion\">\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20el%20curso%20*Materiales%20Peligrosos%20Nivel%20Advertencia*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-footer\">\n          <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\n        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>  <!-- MODAL: Atenci\u00f3n prehospitalaria --><\/p>\n<div class=\"modal fade modal-80\" id=\"modalPrehos\" tabindex=\"-1\" role=\"dialog\">\n<div class=\"modal-dialog\" role=\"document\">\n<div class=\"modal-content\">\n<div class=\"modal-header\">\n          <button type=\"button\" class=\"close\" data-dismiss=\"modal\">&times;<\/button><\/p>\n<h4 class=\"modal-title\">Atenci\u00f3n prehospitalaria<\/h4>\n<\/p><\/div>\n<div class=\"modal-body\">\n          <span class=\"modal-badge\"><\/span><\/p>\n<div class=\"modal-curso-item\">\n<h5>APH B\u00e1sico<\/h5>\n<p>RCP, control de hemorragias, inmovilizaci\u00f3n y traslado de v\u00edctimas.<\/p>\n<div class=\"curso-accion\">\n              <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20el%20curso%20*APH%20B\u00e1sico*.\" target=\"_blank\" class=\"mibtn btn-preguntar\">Preguntar<\/a>\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-footer\">\n          <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\n        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>  <!-- ==================== MODALES: Brigadas de emergencia empresariales ==================== --><\/p>\n<p>  <!-- MODAL: Brigada Clase I --><\/p>\n<div class=\"modal fade modal-80 modal-brigada\" id=\"modalClase1\" tabindex=\"-1\" role=\"dialog\">\n<div class=\"modal-dialog\" role=\"document\">\n<div class=\"modal-content\">\n<div class=\"modal-header\">\n          <button type=\"button\" class=\"close\" data-dismiss=\"modal\">&times;<\/button><\/p>\n<div class=\"brigada-h-title\">\n            <span class=\"brigada-nivel\">Clase I \u00b7 Riesgo Bajo \/ Moderado<\/span><\/p>\n<h4 class=\"modal-title\">Brigada Contraincendios<\/h4>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-body\">\n<div class=\"brigada-stats\">\n<div class=\"brigada-stat\">\n              <i class=\"bi bi-clock-history\"><\/i><\/p>\n<div><strong>41 horas<\/strong><span>Duraci\u00f3n total<\/span><\/div>\n<\/p><\/div>\n<div class=\"brigada-stat\">\n              <i class=\"bi bi-list-check\"><\/i><\/p>\n<div><strong>10 m\u00f3dulos<\/strong><span>Tem\u00e1tica<\/span><\/div>\n<\/p><\/div>\n<div class=\"brigada-stat\">\n              <i class=\"bi bi-patch-check-fill\"><\/i><\/p>\n<div><strong>M\u00edn. 80%<\/strong><span>Aprobaci\u00f3n<\/span><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<h5 class=\"brigada-subtitulo\">Contenido tem\u00e1tico<\/h5>\n<ol class=\"brigada-temario\">\n<li><span>Normatividad<\/span><em>4 h<\/em><\/li>\n<li><span>Administraci\u00f3n de la Emergencia<\/span><em>6 h<\/em><\/li>\n<li><span>Articulaci\u00f3n de la brigada con el Cuerpo de Bomberos<\/span><em>2 h<\/em><\/li>\n<li><span>Manejo del Plan de Evacuaci\u00f3n y Plan de Emergencia<\/span><em>3 h<\/em><\/li>\n<li><span>Riesgos de Seguridad de los Brigadistas<\/span><em>2 h<\/em><\/li>\n<li><span>Comportamiento del Fuego<\/span><em>4 h<\/em><\/li>\n<li><span>M\u00e9todos, Agentes y Equipos de Extinci\u00f3n<\/span><em>4 h<\/em><\/li>\n<li><span>Extintores Port\u00e1tiles Bajo la Normatividad Nacional e Internacional<\/span><em>4 h<\/em><\/li>\n<li><span>Evacuaci\u00f3n y Transporte de Pacientes<\/span><em>8 h<\/em><\/li>\n<li><span>Procedimiento Operativo Normalizado<\/span><em>4 h<\/em><\/li>\n<\/ol>\n<h5 class=\"brigada-subtitulo\">Resultados de aprendizaje<\/h5>\n<ul class=\"brigada-aprendizaje\">\n<li>Identifica y previene riesgos de incendio en su lugar de trabajo.<\/li>\n<li>Act\u00faa como primer respondiente ante una emergencia inicial.<\/li>\n<li>Usa correctamente extintores port\u00e1tiles seg\u00fan el tipo de fuego presente.<\/li>\n<li>Ejecuta el plan de evacuaci\u00f3n y coordina la llegada del Cuerpo de Bomberos.<\/li>\n<\/ul>\n<div class=\"brigada-cert\">\n            <i class=\"bi bi-award-fill\"><\/i><\/p>\n<div>\n              <strong>Certificaci\u00f3n oficial del Cuerpo de Bomberos<\/strong><\/p>\n<p>Bajo los lineamientos de la Resoluci\u00f3n 0256 de 2014 \u00b7 Aprobaci\u00f3n m\u00ednima del 80%.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-footer\">\n          <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20la%20*Brigada%20Contraincendios%20Clase%20I*.\" target=\"_blank\" class=\"mibtn btn-preguntar-brigada\"><br \/>\n            <i class=\"bi bi-whatsapp\"><\/i> Preguntar por este curso<br \/>\n          <\/a><br \/>\n          <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\n        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>  <!-- MODAL: Brigada Clase II --><\/p>\n<div class=\"modal fade modal-80 modal-brigada\" id=\"modalClase2\" tabindex=\"-1\" role=\"dialog\">\n<div class=\"modal-dialog\" role=\"document\">\n<div class=\"modal-content\">\n<div class=\"modal-header\">\n          <button type=\"button\" class=\"close\" data-dismiss=\"modal\">&times;<\/button><\/p>\n<div class=\"brigada-h-title\">\n            <span class=\"brigada-nivel\">Clase II \u00b7 Riesgo Moderado<\/span><\/p>\n<h4 class=\"modal-title\">Brigada Contraincendios Intermedia<\/h4>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-body\">\n<div class=\"brigada-stats\">\n<div class=\"brigada-stat\">\n              <i class=\"bi bi-clock-history\"><\/i><\/p>\n<div><strong>208 horas<\/strong><span>Duraci\u00f3n total<\/span><\/div>\n<\/p><\/div>\n<div class=\"brigada-stat\">\n              <i class=\"bi bi-list-check\"><\/i><\/p>\n<div><strong>29 m\u00f3dulos<\/strong><span>Tem\u00e1tica<\/span><\/div>\n<\/p><\/div>\n<div class=\"brigada-stat\">\n              <i class=\"bi bi-patch-check-fill\"><\/i><\/p>\n<div><strong>M\u00edn. 80%<\/strong><span>Aprobaci\u00f3n<\/span><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<h5 class=\"brigada-subtitulo\">Contenido tem\u00e1tico<\/h5>\n<ol class=\"brigada-temario\">\n<li><span>Normatividad Colombiana<\/span><em>4 h<\/em><\/li>\n<li><span>Aspectos Legales (Marco legal en incendio, salud, rescate y materiales peligrosos)<\/span><em>4 h<\/em><\/li>\n<li><span>Manejo del Plan de Evacuaci\u00f3n y Plan de Emergencia<\/span><em>8 h<\/em><\/li>\n<li><span>Administraci\u00f3n de Emergencia<\/span><em>16 h<\/em><\/li>\n<li><span>Articulaci\u00f3n de la Brigada con el Cuerpo de Bomberos<\/span><em>6 h<\/em><\/li>\n<li><span>Gesti\u00f3n para el Control de Emergencias<\/span><em>6 h<\/em><\/li>\n<li><span>Riesgos de Seguridad de los Brigadistas<\/span><em>6 h<\/em><\/li>\n<li><span>Prevenci\u00f3n e Inspecci\u00f3n de Incendios<\/span><em>6 h<\/em><\/li>\n<li><span>Comportamiento del Fuego<\/span><em>4 h<\/em><\/li>\n<li><span>M\u00e9todos, Agentes y Equipos de Extinci\u00f3n<\/span><em>4 h<\/em><\/li>\n<li><span>Extintores Port\u00e1tiles Bajo la Normatividad Nacional e Internacional<\/span><em>4 h<\/em><\/li>\n<li><span>Hidr\u00e1ulica \u2013 Conceptos B\u00e1sicos<\/span><em>4 h<\/em><\/li>\n<li><span>Abastecimiento de Agua<\/span><em>4 h<\/em><\/li>\n<li><span>Mangueras y Accesorios para Control de Incendios<\/span><em>4 h<\/em><\/li>\n<li><span>Chorros para Control de Incendios<\/span><em>4 h<\/em><\/li>\n<li><span>Equipos de Protecci\u00f3n Personal<\/span><em>4 h<\/em><\/li>\n<li><span>Equipos de Respiraci\u00f3n Aut\u00f3noma<\/span><em>4 h<\/em><\/li>\n<li><span>Seguridad en Operaci\u00f3n<\/span><em>2 h<\/em><\/li>\n<li><span>Escaleras para Operaciones de Incendios<\/span><em>4 h<\/em><\/li>\n<li><span>T\u00e9cnicas de Control de Incendios<\/span><em>4 h<\/em><\/li>\n<li><span>Comunicaciones<\/span><em>4 h<\/em><\/li>\n<li><span>Sistemas de Protecci\u00f3n Contraincendios<\/span><em>4 h<\/em><\/li>\n<li><span>Sistemas Pasivos de Protecci\u00f3n Contraincendios<\/span><em>6 h<\/em><\/li>\n<li><span>Simulaciones y Simulacros<\/span><em>6 h<\/em><\/li>\n<li><span>Primer Respondiente en Materiales Peligrosos<\/span><em>24 h<\/em><\/li>\n<li><span>Primer Respondiente a Emergencias M\u00e9dicas<\/span><em>30 h<\/em><\/li>\n<li><span>Reanimaci\u00f3n Cardio Pulmonar (RCP)<\/span><em>8 h<\/em><\/li>\n<li><span>Primer Respondiente en Rescate (obligatorio curso de alturas avanzado)<\/span><em>16 h<\/em><\/li>\n<li><span>Procedimiento Operativo Normalizado<\/span><em>8 h<\/em><\/li>\n<\/ol>\n<p class=\"brigada-todo\">Programa desarrollado en un periodo m\u00e1ximo de 12 meses por brigadista. Incluye dotaci\u00f3n de gabinetes contraincendio y sistemas de protecci\u00f3n pasiva, seg\u00fan la normatividad vigente.<\/p>\n<h5 class=\"brigada-subtitulo\">Resultados de aprendizaje<\/h5>\n<ul class=\"brigada-aprendizaje\">\n<li>Controla incendios en etapas m\u00e1s avanzadas usando mangueras, chorros e hidr\u00e1ulica b\u00e1sica.<\/li>\n<li>Brinda atenci\u00f3n inicial en emergencias m\u00e9dicas y con materiales peligrosos.<\/li>\n<li>Ejecuta rescates b\u00e1sicos y opera equipos de respiraci\u00f3n aut\u00f3noma.<\/li>\n<li>Gestiona la emergencia de principio a fin bajo un procedimiento operativo normalizado.<\/li>\n<\/ul>\n<div class=\"brigada-cert\">\n            <i class=\"bi bi-award-fill\"><\/i><\/p>\n<div>\n              <strong>Certificaci\u00f3n oficial del Cuerpo de Bomberos<\/strong><\/p>\n<p>Bajo los lineamientos de la Resoluci\u00f3n 0256 de 2014 \u00b7 Aprobaci\u00f3n m\u00ednima del 80%.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-footer\">\n          <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20la%20*Brigada%20Contraincendios%20Clase%20II*.\" target=\"_blank\" class=\"mibtn btn-preguntar-brigada\"><br \/>\n            <i class=\"bi bi-whatsapp\"><\/i> Preguntar por este curso<br \/>\n          <\/a><br \/>\n          <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\n        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<p>  <!-- MODAL: Brigada Clase III --><\/p>\n<div class=\"modal fade modal-80 modal-brigada\" id=\"modalClase3\" tabindex=\"-1\" role=\"dialog\">\n<div class=\"modal-dialog\" role=\"document\">\n<div class=\"modal-content\">\n<div class=\"modal-header\">\n          <button type=\"button\" class=\"close\" data-dismiss=\"modal\">&times;<\/button><\/p>\n<div class=\"brigada-h-title\">\n            <span class=\"brigada-nivel\">Clase III \u00b7 Riesgo Alto \/ Especializada<\/span><\/p>\n<h4 class=\"modal-title\">Brigada Contraincendios Especializada<\/h4>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-body\">\n<div class=\"brigada-stats\">\n<div class=\"brigada-stat\">\n              <i class=\"bi bi-clock-history\"><\/i><\/p>\n<div><strong>M\u00edn. 320 h<\/strong><span>Duraci\u00f3n total<\/span><\/div>\n<\/p><\/div>\n<div class=\"brigada-stat\">\n              <i class=\"bi bi-list-check\"><\/i><\/p>\n<div><strong>7 sectores<\/strong><span>Ajuste tem\u00e1tico<\/span><\/div>\n<\/p><\/div>\n<div class=\"brigada-stat\">\n              <i class=\"bi bi-patch-check-fill\"><\/i><\/p>\n<div><strong>M\u00edn. 80%<\/strong><span>Aprobaci\u00f3n<\/span><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<h5 class=\"brigada-subtitulo\">Sectores \/ escenarios de riesgo<\/h5>\n<ol class=\"brigada-temario\">\n<p>            <!-- 1. MATERIALES PELIGROSOS --><\/p>\n<li class=\"brigada-item\">\n<div class=\"brigada-item-header\">\n                <span>Materiales Peligrosos<\/span><br \/>\n                <em>Seg\u00fan riesgo<\/em><br \/>\n                <i class=\"bi bi-chevron-down brigada-flecha\"><\/i>\n              <\/div>\n<div class=\"brigada-acordeon-panel\">\n<div class=\"hazmat-panel\">\n<div class=\"hazmat-tag\">\n                    <i class=\"bi bi-file-earmark-text\"><\/i><br \/>\n                    <span>Art. 8.6 y 6.3.5 \u00b7 Resoluci\u00f3n 0256 de 2014<\/span>\n                  <\/div>\n<p class=\"hazmat-desc\">\n                    La resoluci\u00f3n permite que tu brigada se certifique como <strong>Brigada Contraincendios Clase III Especializada en manejo de materiales peligrosos<\/strong>, ajustando el contenido y las horas de formaci\u00f3n al an\u00e1lisis de riesgo espec\u00edfico de tu empresa. Esta tem\u00e1tica puede desarrollarse, seg\u00fan el Art. 6.3.5, en tres niveles: Operaciones, T\u00e9cnico y Especialista.\n                  <\/p>\n<div class=\"hazmat-aplica\">\n                    <span class=\"hazmat-aplica-label\"><i class=\"bi bi-check2-circle\"><\/i> Te sirve si tu empresa maneja:<\/span><\/p>\n<ul class=\"hazmat-aplica-list\">\n<li>Sustancias qu\u00edmicas o l\u00edquidos inflamables<\/li>\n<li>Almacenamiento o transporte de material peligroso<\/li>\n<li>Procesos industriales de alto riesgo<\/li>\n<\/ul><\/div>\n<div class=\"hazmat-footer\">\n                    <i class=\"bi bi-award-fill\"><\/i><\/p>\n<p>Se certifica como brigada Clase III \u00b7 Especializada, con el enfoque tem\u00e1tico ajustado a tu sector.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/li>\n<p>            <!-- 2. INCENDIOS EN L\u00cdQUIDOS Y GASES --><\/p>\n<li class=\"brigada-item\">\n<div class=\"brigada-item-header\">\n                <span>Incendios en L\u00edquidos y Gases y sus Riesgos Asociados<\/span><br \/>\n                <em>Seg\u00fan riesgo<\/em><br \/>\n                <i class=\"bi bi-chevron-down brigada-flecha\"><\/i>\n              <\/div>\n<div class=\"brigada-acordeon-panel\">\n<div class=\"hazmat-panel\">\n<div class=\"hazmat-tag\">\n                    <i class=\"bi bi-file-earmark-text\"><\/i><br \/>\n                    <span>Art. 8.6 \u00b7 Resoluci\u00f3n 0256 de 2014<\/span>\n                  <\/div>\n<p class=\"hazmat-desc\">\n                    La resoluci\u00f3n permite que tu brigada se certifique como <strong>Brigada Contraincendios Clase III Especializada en incendios en l\u00edquidos y gases y sus riesgos asociados<\/strong>, ajustando el contenido y las horas de formaci\u00f3n al an\u00e1lisis de riesgo espec\u00edfico de tu empresa.\n                  <\/p>\n<div class=\"hazmat-aplica\">\n                    <span class=\"hazmat-aplica-label\"><i class=\"bi bi-check2-circle\"><\/i> Te sirve si tu empresa maneja:<\/span><\/p>\n<ul class=\"hazmat-aplica-list\">\n<li>L\u00edquidos inflamables o combustibles en sus procesos<\/li>\n<li>Gases inflamables, t\u00f3xicos o presurizados<\/li>\n<li>Riesgo de fuga, derrame o explosi\u00f3n asociado a estos productos<\/li>\n<\/ul><\/div>\n<div class=\"hazmat-footer\">\n                    <i class=\"bi bi-award-fill\"><\/i><\/p>\n<p>Se certifica como brigada Clase III \u00b7 Especializada, con el enfoque tem\u00e1tico ajustado a tu sector.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/li>\n<p>            <!-- 3. ALMACENAMIENTO DE INFLAMABLES Y COMBUSTIBLES --><\/p>\n<li class=\"brigada-item\">\n<div class=\"brigada-item-header\">\n                <span>Almacenamiento de Inflamables y Combustibles<\/span><br \/>\n                <em>Seg\u00fan riesgo<\/em><br \/>\n                <i class=\"bi bi-chevron-down brigada-flecha\"><\/i>\n              <\/div>\n<div class=\"brigada-acordeon-panel\">\n<div class=\"hazmat-panel\">\n<div class=\"hazmat-tag\">\n                    <i class=\"bi bi-file-earmark-text\"><\/i><br \/>\n                    <span>Art. 8.6 \u00b7 Resoluci\u00f3n 0256 de 2014<\/span>\n                  <\/div>\n<p class=\"hazmat-desc\">\n                    La resoluci\u00f3n permite que tu brigada se certifique como <strong>Brigada Contraincendios Clase III Especializada en almacenamiento de inflamables y combustibles<\/strong>, ajustando el contenido y las horas de formaci\u00f3n al an\u00e1lisis de riesgo espec\u00edfico de tu empresa.\n                  <\/p>\n<div class=\"hazmat-aplica\">\n                    <span class=\"hazmat-aplica-label\"><i class=\"bi bi-check2-circle\"><\/i> Te sirve si tu empresa maneja:<\/span><\/p>\n<ul class=\"hazmat-aplica-list\">\n<li>Bodegas, tanques o cilindros de almacenamiento de inflamables\/combustibles<\/li>\n<li>Estaciones de servicio o centros de distribuci\u00f3n de combustible<\/li>\n<li>\u00c1reas de almacenamiento clasificadas por alto riesgo<\/li>\n<\/ul><\/div>\n<div class=\"hazmat-footer\">\n                    <i class=\"bi bi-award-fill\"><\/i><\/p>\n<p>Se certifica como brigada Clase III \u00b7 Especializada, con el enfoque tem\u00e1tico ajustado a tu sector.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/li>\n<p>            <!-- 4. MINER\u00cdA --><\/p>\n<li class=\"brigada-item\">\n<div class=\"brigada-item-header\">\n                <span>Miner\u00eda<\/span><br \/>\n                <em>Seg\u00fan riesgo<\/em><br \/>\n                <i class=\"bi bi-chevron-down brigada-flecha\"><\/i>\n              <\/div>\n<div class=\"brigada-acordeon-panel\">\n<div class=\"hazmat-panel\">\n<div class=\"hazmat-tag\">\n                    <i class=\"bi bi-file-earmark-text\"><\/i><br \/>\n                    <span>Art. 8.6 \u00b7 Resoluci\u00f3n 0256 de 2014<\/span>\n                  <\/div>\n<p class=\"hazmat-desc\">\n                    La resoluci\u00f3n permite que tu brigada se certifique como <strong>Brigada Contraincendios Clase III Especializada en miner\u00eda<\/strong>, ajustando el contenido y las horas de formaci\u00f3n al an\u00e1lisis de riesgo espec\u00edfico de tu empresa.\n                  <\/p>\n<div class=\"hazmat-aplica\">\n                    <span class=\"hazmat-aplica-label\"><i class=\"bi bi-check2-circle\"><\/i> Te sirve si tu empresa maneja:<\/span><\/p>\n<ul class=\"hazmat-aplica-list\">\n<li>Operaciones de miner\u00eda subterr\u00e1nea o a cielo abierto<\/li>\n<li>Procesos propios de la actividad minera<\/li>\n<li>Instalaciones o campamentos mineros de alto riesgo<\/li>\n<\/ul><\/div>\n<div class=\"hazmat-footer\">\n                    <i class=\"bi bi-award-fill\"><\/i><\/p>\n<p>Se certifica como brigada Clase III \u00b7 Especializada, con el enfoque tem\u00e1tico ajustado a tu sector.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/li>\n<p>            <!-- 5. PROCESOS PETROLEROS Y PETROQU\u00cdMICOS --><\/p>\n<li class=\"brigada-item\">\n<div class=\"brigada-item-header\">\n                <span>Procesos Petroleros y Petroqu\u00edmicos<\/span><br \/>\n                <em>Seg\u00fan riesgo<\/em><br \/>\n                <i class=\"bi bi-chevron-down brigada-flecha\"><\/i>\n              <\/div>\n<div class=\"brigada-acordeon-panel\">\n<div class=\"hazmat-panel\">\n<div class=\"hazmat-tag\">\n                    <i class=\"bi bi-file-earmark-text\"><\/i><br \/>\n                    <span>Art. 8.6 \u00b7 Resoluci\u00f3n 0256 de 2014<\/span>\n                  <\/div>\n<p class=\"hazmat-desc\">\n                    La resoluci\u00f3n permite que tu brigada se certifique como <strong>Brigada Contraincendios Clase III Especializada en procesos petroleros y petroqu\u00edmicos<\/strong>, ajustando el contenido y las horas de formaci\u00f3n al an\u00e1lisis de riesgo espec\u00edfico de tu empresa.\n                  <\/p>\n<div class=\"hazmat-aplica\">\n                    <span class=\"hazmat-aplica-label\"><i class=\"bi bi-check2-circle\"><\/i> Te sirve si tu empresa maneja:<\/span><\/p>\n<ul class=\"hazmat-aplica-list\">\n<li>Extracci\u00f3n, refinaci\u00f3n o transporte de hidrocarburos<\/li>\n<li>Plantas petroqu\u00edmicas o de procesamiento de derivados del petr\u00f3leo<\/li>\n<li>Ductos, estaciones de bombeo o instalaciones asociadas<\/li>\n<\/ul><\/div>\n<div class=\"hazmat-footer\">\n                    <i class=\"bi bi-award-fill\"><\/i><\/p>\n<p>Se certifica como brigada Clase III \u00b7 Especializada, con el enfoque tem\u00e1tico ajustado a tu sector.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/li>\n<p>            <!-- 6. AGLOMERACIONES DE P\u00daBLICO --><\/p>\n<li class=\"brigada-item\">\n<div class=\"brigada-item-header\">\n                <span>Aglomeraciones de P\u00fablico \u2013 Eventos de Grandes Multitudes<\/span><br \/>\n                <em>Seg\u00fan riesgo<\/em><br \/>\n                <i class=\"bi bi-chevron-down brigada-flecha\"><\/i>\n              <\/div>\n<div class=\"brigada-acordeon-panel\">\n<div class=\"hazmat-panel\">\n<div class=\"hazmat-tag\">\n                    <i class=\"bi bi-file-earmark-text\"><\/i><br \/>\n                    <span>Art. 8.6 \u00b7 Resoluci\u00f3n 0256 de 2014<\/span>\n                  <\/div>\n<p class=\"hazmat-desc\">\n                    La resoluci\u00f3n permite que tu brigada se certifique como <strong>Brigada Contraincendios Clase III Especializada en aglomeraciones de p\u00fablico y eventos de grandes multitudes<\/strong>, ajustando el contenido y las horas de formaci\u00f3n al an\u00e1lisis de riesgo espec\u00edfico de tu empresa.\n                  <\/p>\n<div class=\"hazmat-aplica\">\n                    <span class=\"hazmat-aplica-label\"><i class=\"bi bi-check2-circle\"><\/i> Te sirve si tu empresa:<\/span><\/p>\n<ul class=\"hazmat-aplica-list\">\n<li>Organiza o administra eventos masivos, conciertos o espect\u00e1culos p\u00fablicos<\/li>\n<li>Opera estadios, coliseos, centros de convenciones o similares<\/li>\n<li>Recibe afluencia masiva de p\u00fablico en sus instalaciones<\/li>\n<\/ul><\/div>\n<div class=\"hazmat-footer\">\n                    <i class=\"bi bi-award-fill\"><\/i><\/p>\n<p>Se certifica como brigada Clase III \u00b7 Especializada, con el enfoque tem\u00e1tico ajustado a tu sector.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/li>\n<p>            <!-- 7. T\u00daNELES --><\/p>\n<li class=\"brigada-item\">\n<div class=\"brigada-item-header\">\n                <span>T\u00faneles<\/span><br \/>\n                <em>Seg\u00fan riesgo<\/em><br \/>\n                <i class=\"bi bi-chevron-down brigada-flecha\"><\/i>\n              <\/div>\n<div class=\"brigada-acordeon-panel\">\n<div class=\"hazmat-panel\">\n<div class=\"hazmat-tag\">\n                    <i class=\"bi bi-file-earmark-text\"><\/i><br \/>\n                    <span>Art. 8.6 \u00b7 Resoluci\u00f3n 0256 de 2014<\/span>\n                  <\/div>\n<p class=\"hazmat-desc\">\n                    La resoluci\u00f3n permite que tu brigada se certifique como <strong>Brigada Contraincendios Clase III Especializada en t\u00faneles<\/strong>, ajustando el contenido y las horas de formaci\u00f3n al an\u00e1lisis de riesgo espec\u00edfico de tu empresa.\n                  <\/p>\n<div class=\"hazmat-aplica\">\n                    <span class=\"hazmat-aplica-label\"><i class=\"bi bi-check2-circle\"><\/i> Te sirve si tu empresa:<\/span><\/p>\n<ul class=\"hazmat-aplica-list\">\n<li>Opera o mantiene t\u00faneles viales, ferroviarios o de otro tipo<\/li>\n<li>Ejecuta obras de construcci\u00f3n de t\u00faneles<\/li>\n<li>Cuenta con infraestructura subterr\u00e1nea de tr\u00e1nsito<\/li>\n<\/ul><\/div>\n<div class=\"hazmat-footer\">\n                    <i class=\"bi bi-award-fill\"><\/i><\/p>\n<p>Se certifica como brigada Clase III \u00b7 Especializada, con el enfoque tem\u00e1tico ajustado a tu sector.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/li>\n<\/ol>\n<p class=\"brigada-todo\">Programa de m\u00ednimo 320 horas, desarrollado en un periodo m\u00e1ximo de 18 meses por brigadista, ajustado al an\u00e1lisis de riesgo espec\u00edfico de tu empresa: sector petrolero, energ\u00e9tico, industrial, aeroportuario, minero, hidroel\u00e9ctrico y similares. Incluye equipo de protecci\u00f3n personal completo y veh\u00edculo certificado para atenci\u00f3n inicial de emergencias.<\/p>\n<h5 class=\"brigada-subtitulo\">Resultados de aprendizaje<\/h5>\n<ul class=\"brigada-aprendizaje\">\n<li>Responde ante emergencias de alta complejidad propias de su sector.<\/li>\n<li>Opera equipos y veh\u00edculos certificados de atenci\u00f3n inicial de emergencias.<\/li>\n<li>Ejecuta protocolos ajustados al an\u00e1lisis de riesgo espec\u00edfico de la organizaci\u00f3n.<\/li>\n<\/ul>\n<div class=\"brigada-cert\">\n            <i class=\"bi bi-award-fill\"><\/i><\/p>\n<div>\n              <strong>Certificaci\u00f3n oficial del Cuerpo de Bomberos<\/strong><\/p>\n<p>Bajo los lineamientos de la Resoluci\u00f3n 0256 de 2014 \u00b7 Aprobaci\u00f3n m\u00ednima del 80%.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"modal-footer\">\n          <a href=\"https:\/\/wa.me\/573219503696?text=Hola,%20quisiera%20m\u00e1s%20informaci\u00f3n%20sobre%20la%20*Brigada%20Contraincendios%20Clase%20III*.\" target=\"_blank\" class=\"mibtn btn-preguntar-brigada\"><br \/>\n            <i class=\"bi bi-whatsapp\"><\/i> Preguntar por este curso<br \/>\n          <\/a><br \/>\n          <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\n        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<section class=\"seccion-contacto\" id=\"seccion-contacto\">\n<div class=\"hero-imgyform\">\n        <!-- COLUMNA IZQUIERDA: Imagen destacada -->\r\n<div class=\"col-izquierda\">\r\n  <img decoding=\"async\" src=\"https:\/\/www.bomberosyopal.com\/inicio\/wp-content\/uploads\/2026\/07\/MUJER.png\" alt=\"Academia ACBOCOL Asesor\u00eda\" class=\"img-responsive img-rounded\">\r\n<\/div>\r\n \r\n<!-- COLUMNA DERECHA: Formulario -->\r\n<div class=\"col-derecha\">\r\n  <div class=\"form-card\">\r\n    <h2>Agendar Asesor\u00eda<\/h2>\r\n    <p>Academia ACBOCOL est\u00e1 a su disposici\u00f3n<\/p>\r\n \r\n    <div id=\"mensaje-estado\" style=\"display:none; margin-bottom: 15px; padding: 12px; border-radius: 6px;\"><\/div>\r\n \r\n    <form class=\"form-asesoria\" id=\"formAsesoria\" method=\"POST\">\r\n \r\n      <div class=\"form-group\">\r\n        <label class=\"control-label\" for=\"asesoria-nombre\">Nombre Completo<\/label>\r\n        <input type=\"text\" id=\"asesoria-nombre\" class=\"form-control\" name=\"nombre\" placeholder=\"Ingresa tu nombre completo\" required>\r\n      <\/div>\r\n \r\n      <div class=\"form-group\">\r\n        <label class=\"control-label\" for=\"asesoria-correo\">Correo Electr\u00f3nico<\/label>\r\n        <input type=\"email\" id=\"asesoria-correo\" class=\"form-control\" name=\"correo\" placeholder=\"Ingresa tu correo electr\u00f3nico\" required>\r\n      <\/div>\r\n \r\n      <div class=\"form-group\">\r\n        <label class=\"control-label\" for=\"asesoria-telefono\">Tel\u00e9fono<\/label>\r\n        <div class=\"input-group\">\r\n          <span class=\"input-group-addon prefijo-tel\">+57<\/span>\r\n          <input type=\"tel\"\r\n                 id=\"asesoria-telefono\"\r\n                 class=\"form-control input-tel\"\r\n                 name=\"telefono\"\r\n                 placeholder=\"Ingresa tu n\u00famero de tel\u00e9fono\"\r\n                 pattern=\"3[0-9]{9}\"\r\n                 maxlength=\"10\"\r\n                 minlength=\"10\"\r\n                 inputmode=\"numeric\"\r\n                 title=\"Debe ser un celular colombiano de 10 d\u00edgitos, iniciando en 3\"\r\n                 required>\r\n        <\/div>\r\n      <\/div>\r\n \r\n      <div class=\"form-group\">\r\n        <label class=\"control-label\" for=\"asesoria-horario\">Mejor horario para contactarte<\/label>\r\n        <select class=\"form-control\" id=\"asesoria-horario\" name=\"horario_contacto\">\r\n          <option value=\"Ma\u00f1ana - 10:00 AM\">Ma\u00f1ana - 10:00 AM<\/option>\r\n          <option value=\"Tarde - 3:00 PM\">Tarde - 3:00 PM<\/option>\r\n          <option value=\"Noche - 7:00 PM\">Noche - 7:00 PM<\/option>\r\n        <\/select>\r\n      <\/div>\r\n \r\n      <div class=\"form-group\">\r\n        <label class=\"control-label\" for=\"asesoria-descripcion\">Descripci\u00f3n de la Asesor\u00eda<\/label>\r\n        <textarea class=\"form-control\" id=\"asesoria-descripcion\" name=\"descripcion\" rows=\"4\" placeholder=\"Describe tu consulta o necesidad de asesor\u00eda\"><\/textarea>\r\n      <\/div>\r\n <div class=\"checkbox checkbox-terminos\">\r\n  <label>\r\n    <input type=\"checkbox\" name=\"privacidad\" required>\r\n    <span>Acepto el tratamiento de mis datos personales conforme a la\r\n      <a href=\"#\" data-toggle=\"modal\" data-target=\"#modalPoliticaPrivacidad\">pol\u00edtica de privacidad<\/a>\r\n      de Academia ACBOCOL.<\/span>\r\n  <\/label>\r\n<\/div>\r\n \r\n<!-- ============================================================\r\n     MODAL - POL\u00cdTICA DE PRIVACIDAD Y TRATAMIENTO DE DATOS PERSONALES\r\n     ============================================================ -->\r\n<style>\r\n  #modalPoliticaPrivacidad .modal-body h5 {\r\n    color: #c0392b;\r\n    font-weight: 700;\r\n    margin-top: 22px;\r\n    padding-bottom: 6px;\r\n    border-bottom: 2px solid #f2f2f2;\r\n  }\r\n  #modalPoliticaPrivacidad .modal-body h5:first-child {\r\n    margin-top: 0;\r\n  }\r\n  #modalPoliticaPrivacidad .modal-body p,\r\n  #modalPoliticaPrivacidad .modal-body li {\r\n    text-align: justify;\r\n    color: #444;\r\n  }\r\n  #modalPoliticaPrivacidad .modal-body ul {\r\n    padding-left: 20px;\r\n  }\r\n  #modalPoliticaPrivacidad .modal-body li {\r\n    margin-bottom: 4px;\r\n  }\r\n  #modalPoliticaPrivacidad .politica-intro {\r\n    background: #fdf2f0;\r\n    border-left: 4px solid #c0392b;\r\n    padding: 12px 15px;\r\n    margin-bottom: 10px;\r\n    font-size: 13px;\r\n  }\r\n<\/style>\r\n \r\n<div class=\"modal fade modal-90\" id=\"modalPoliticaPrivacidad\" tabindex=\"-1\" role=\"dialog\">\r\n  <div class=\"modal-dialog\" role=\"document\">\r\n    <div class=\"modal-content\">\r\n      <div class=\"modal-header\">\r\n        <button type=\"button\" class=\"close\" data-dismiss=\"modal\">&times;<\/button>\r\n        <h4 class=\"modal-title\">Pol\u00edtica de Privacidad y Tratamiento de Datos Personales<\/h4>\r\n      <\/div>\r\n      <div class=\"modal-body\">\r\n \r\n        <p class=\"politica-intro\"><i class=\"glyphicon glyphicon-info-sign\"><\/i>\r\n          Esta pol\u00edtica aplica a todos los datos personales recolectados por Academia ACBOCOL a trav\u00e9s de sus formularios, sitio web y dem\u00e1s canales de comunicaci\u00f3n, en cumplimiento de la Ley 1581 de 2012.\r\n        <\/p>\r\n \r\n        <h5><strong>1. Introducci\u00f3n<\/strong><\/h5>\r\n        <p>La Academia ACBOCOL, instituci\u00f3n dedicada a la capacitaci\u00f3n, formaci\u00f3n y entrenamiento en prevenci\u00f3n, atenci\u00f3n de emergencias, brigadas empresariales, primeros auxilios, gesti\u00f3n del riesgo, seguridad y dem\u00e1s programas relacionados con la formaci\u00f3n bomberil, reconoce la importancia de proteger la informaci\u00f3n personal de sus usuarios, estudiantes, empresas, entidades y visitantes.<\/p>\r\n        <p>La presente Pol\u00edtica de Privacidad tiene como finalidad informar la manera en que se recolectan, utilizan, almacenan, administran y protegen los datos personales suministrados a trav\u00e9s de nuestros formularios, sitio web, correo electr\u00f3nico, llamadas telef\u00f3nicas, WhatsApp y dem\u00e1s canales de comunicaci\u00f3n, en cumplimiento de la Ley 1581 de 2012 y sus decretos reglamentarios.<\/p>\r\n \r\n        <h5><strong>2. Responsable del tratamiento de los datos<\/strong><\/h5>\r\n        <p>\r\n          <strong>Academia ACBOCOL<\/strong><br>\r\n          Yopal, Casanare \u2013 Colombia.<br>\r\n          Correo electr\u00f3nico: <br>\r\n          Tel\u00e9fono: \r\n        <\/p>\r\n \r\n        <h5><strong>3. Datos personales que recolectamos<\/strong><\/h5>\r\n        <p>A trav\u00e9s de nuestros formularios podremos solicitar informaci\u00f3n como:<\/p>\r\n        <ul>\r\n          <li>Nombre completo.<\/li>\r\n          <li>Correo electr\u00f3nico.<\/li>\r\n          <li>N\u00famero de tel\u00e9fono.<\/li>\r\n          <li>Horario preferido para ser contactado.<\/li>\r\n          <li>Empresa o entidad (cuando aplique).<\/li>\r\n          <li>Descripci\u00f3n de la asesor\u00eda, consulta o informaci\u00f3n solicitada.<\/li>\r\n          <li>Cualquier otra informaci\u00f3n que el titular decida suministrar voluntariamente.<\/li>\r\n        <\/ul>\r\n \r\n        <h5><strong>4. Finalidad del tratamiento de los datos<\/strong><\/h5>\r\n        <p>Los datos personales suministrados ser\u00e1n utilizados para:<\/p>\r\n        <ul>\r\n          <li>Atender solicitudes de informaci\u00f3n.<\/li>\r\n          <li>Responder consultas e inquietudes.<\/li>\r\n          <li>Brindar asesor\u00eda sobre cursos, capacitaciones y programas acad\u00e9micos.<\/li>\r\n          <li>Contactar al titular mediante llamada telef\u00f3nica, correo electr\u00f3nico, WhatsApp o mensajes de texto.<\/li>\r\n          <li>Enviar cotizaciones, propuestas comerciales o informaci\u00f3n solicitada.<\/li>\r\n          <li>Informar sobre nuevas capacitaciones, cursos, diplomados, talleres, eventos, campa\u00f1as y actividades organizadas por Academia ACBOCOL.<\/li>\r\n          <li>Realizar seguimiento a solicitudes realizadas por los usuarios.<\/li>\r\n          <li>Mantener comunicaci\u00f3n con estudiantes, aspirantes, empresas y entidades interesadas.<\/li>\r\n          <li>Mejorar nuestros procesos de atenci\u00f3n al cliente y calidad del servicio.<\/li>\r\n          <li>Cumplir obligaciones legales y administrativas aplicables.<\/li>\r\n        <\/ul>\r\n \r\n        <h5><strong>5. Autorizaci\u00f3n del titular<\/strong><\/h5>\r\n        <p>Al marcar la casilla de aceptaci\u00f3n del formulario y enviar sus datos, el titular autoriza de manera libre, previa, expresa, informada e inequ\u00edvoca a Academia ACBOCOL para realizar el tratamiento de sus datos personales conforme a la presente Pol\u00edtica de Privacidad, la Ley 1581 de 2012 y el Decreto 1377 de 2013 (compilado en el Decreto \u00danico Reglamentario 1074 de 2015).<\/p>\r\n \r\n        <h5><strong>6. Uso de canales electr\u00f3nicos<\/strong><\/h5>\r\n        <p>El titular autoriza a Academia ACBOCOL para establecer contacto mediante:<\/p>\r\n        <ul>\r\n          <li>Correo electr\u00f3nico.<\/li>\r\n          <li>WhatsApp.<\/li>\r\n          <li>Llamadas telef\u00f3nicas.<\/li>\r\n          <li>Mensajes SMS (cuando aplique).<\/li>\r\n          <li>Otros medios electr\u00f3nicos autorizados por el titular.<\/li>\r\n        <\/ul>\r\n        <p>Estas comunicaciones podr\u00e1n estar relacionadas con respuestas a solicitudes, informaci\u00f3n acad\u00e9mica, recordatorios, convocatorias, invitaciones a eventos, novedades institucionales y oferta de cursos y programas de formaci\u00f3n.<\/p>\r\n        <p>El titular podr\u00e1 solicitar en cualquier momento dejar de recibir comunicaciones informativas.<\/p>\r\n \r\n        <h5><strong>7. Protecci\u00f3n de la informaci\u00f3n<\/strong><\/h5>\r\n        <p>Academia ACBOCOL adopta medidas administrativas, t\u00e9cnicas y organizacionales razonables para proteger la informaci\u00f3n personal contra p\u00e9rdida, uso indebido, acceso no autorizado, alteraci\u00f3n o divulgaci\u00f3n.<\/p>\r\n        <p>No obstante, ning\u00fan sistema de transmisi\u00f3n o almacenamiento electr\u00f3nico es completamente infalible, por lo que se implementan controles orientados a minimizar los riesgos.<\/p>\r\n \r\n        <h5><strong>8. Compartici\u00f3n de datos<\/strong><\/h5>\r\n        <p>Academia ACBOCOL no vender\u00e1, alquilar\u00e1 ni comercializar\u00e1 los datos personales de los titulares.<\/p>\r\n        <p>La informaci\u00f3n \u00fanicamente podr\u00e1 ser compartida cuando sea requerida por autoridad competente conforme a la ley, sea necesaria para cumplir obligaciones legales, o exista autorizaci\u00f3n expresa del titular.<\/p>\r\n \r\n        <h5><strong>9. Tiempo de conservaci\u00f3n<\/strong><\/h5>\r\n        <p>Los datos personales ser\u00e1n conservados \u00fanicamente durante el tiempo necesario para cumplir las finalidades para las cuales fueron recolectados, atender obligaciones legales o contractuales y mantener el historial de atenci\u00f3n al usuario.<\/p>\r\n        <p>Las solicitudes recibidas ser\u00e1n atendidas en un tiempo razonable, respetando el orden de recepci\u00f3n de los registros en nuestra base de datos y la disponibilidad operativa del personal encargado.<\/p>\r\n \r\n        <h5><strong>10. Derechos del titular<\/strong><\/h5>\r\n        <p>De conformidad con la Ley 1581 de 2012 y el Decreto 1074 de 2015, el titular de los datos personales podr\u00e1:<\/p>\r\n        <ul>\r\n          <li>Conocer los datos personales que reposen en nuestras bases de datos.<\/li>\r\n          <li>Actualizar o corregir su informaci\u00f3n.<\/li>\r\n          <li>Solicitar prueba de la autorizaci\u00f3n otorgada.<\/li>\r\n          <li>Revocar la autorizaci\u00f3n cuando sea procedente.<\/li>\r\n          <li>Solicitar la eliminaci\u00f3n de sus datos cuando legalmente sea posible.<\/li>\r\n          <li>Presentar consultas o reclamos relacionados con el tratamiento de sus datos personales.<\/li>\r\n          <li>Acudir ante la Superintendencia de Industria y Comercio (SIC), como autoridad de vigilancia y control en materia de protecci\u00f3n de datos personales en Colombia, cuando considere que sus derechos han sido vulnerados.<\/li>\r\n        <\/ul>\r\n \r\n        <h5><strong>11. Atenci\u00f3n de consultas<\/strong><\/h5>\r\n        <p>Las solicitudes relacionadas con datos personales podr\u00e1n enviarse al correo electr\u00f3nico oficial de Academia ACBOCOL.<\/p>\r\n        <p>La instituci\u00f3n atender\u00e1 las consultas dentro de un t\u00e9rmino m\u00e1ximo de diez (10) d\u00edas h\u00e1biles, contados a partir de la fecha de recibo, y los reclamos dentro de un t\u00e9rmino m\u00e1ximo de quince (15) d\u00edas h\u00e1biles, conforme a lo establecido por la Ley 1581 de 2012.<\/p>\r\n \r\n        <h5><strong>12. Menores de edad<\/strong><\/h5>\r\n        <p>Academia ACBOCOL no recolectar\u00e1 intencionalmente datos personales de menores de edad sin la autorizaci\u00f3n de sus padres, representantes legales o acudientes, quienes deber\u00e1n actuar en representaci\u00f3n del menor, de conformidad con el inter\u00e9s superior del ni\u00f1o, ni\u00f1a o adolescente reconocido en la Ley 1098 de 2006 (C\u00f3digo de Infancia y Adolescencia) y en la Ley 1581 de 2012.<\/p>\r\n \r\n        <h5><strong>13. Modificaciones a esta pol\u00edtica<\/strong><\/h5>\r\n        <p>Academia ACBOCOL podr\u00e1 actualizar la presente Pol\u00edtica de Privacidad cuando sea necesario para cumplir cambios legales, administrativos o institucionales.<\/p>\r\n        <p>La versi\u00f3n vigente ser\u00e1 publicada en los canales oficiales de la instituci\u00f3n.<\/p>\r\n \r\n        <h5><strong>14. Vigencia<\/strong><\/h5>\r\n        <p>La presente Pol\u00edtica de Privacidad entra en vigencia a partir de su fecha de publicaci\u00f3n y permanecer\u00e1 vigente mientras Academia ACBOCOL realice tratamiento de datos personales conforme a la legislaci\u00f3n colombiana.<\/p>\r\n \r\n      <\/div>\r\n      <div class=\"modal-footer\">\r\n        <button type=\"button\" class=\"btn btn-default\" data-dismiss=\"modal\">Cerrar<\/button>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n \r\n      <div class=\"text-right\">\r\n        <button type=\"submit\" class=\"btn btn-submit btn-enviar\" id=\"btnEnviar\">Agendar Asesor\u00eda<\/button>\r\n      <\/div>\r\n \r\n    <\/form>\r\n  <\/div>\r\n<\/div>\r\n \r\n<style>\r\n\t.form-card h2{\r\n\t\tfont-weight:800;\r\n\t\tcolor:black;\r\n\t}\r\n  .form-asesoria .form-control {\r\n    width: 100%;\r\n    height: 46px;\r\n    padding: 10px 16px;\r\n    font-size: 14px;\r\n    color: #333333;\r\n    background-color: #ffffff;\r\n    border: 1px solid #e0e0e0;\r\n    border-radius: 10px;\r\n    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);\r\n    transition: border-color .2s ease, box-shadow .2s ease;\r\n  }\r\n \r\n  .form-asesoria textarea.form-control {\r\n    height: auto;\r\n    resize: vertical;\r\n  }\r\n \r\n  .form-asesoria .form-control:focus {\r\n    border-color: var(--rojo);\r\n    box-shadow: 0 0 0 3px rgba(219, 10, 19, .12);\r\n    outline: none;\r\n  }\r\n \r\n  .form-asesoria .control-label {\r\n    font-weight: 600;\r\n    font-size: 13px;\r\n    color: #334155;\r\n    margin-bottom: 6px;\r\n  }\r\n \r\n  .form-asesoria .input-group {\r\n    display: flex;\r\n  }\r\n \r\n  .form-asesoria .prefijo-tel {\r\n\twidth: max-content;\r\n    display: flex;\r\n    align-items: center;\r\n    background-color: var(--rojo);\r\n    color: #fff;\r\n    font-weight: bold;\r\n    border: none;\r\n    border-radius: 10px 0 0 10px;\r\n    padding: 0 14px;\r\n  }\r\n \r\n  .form-asesoria .input-tel {\r\n    border-radius: 0 10px 10px 0;\r\n    border-left: none;\r\n  }\r\n \r\n  .form-asesoria .checkbox-terminos {\r\n    display: flex;\r\n    align-items: flex-start;\r\n    margin: 6px 0 18px;\r\n  }\r\n \r\n  .form-asesoria .checkbox-terminos label {\r\n    display: flex;\r\n    align-items: flex-start;\r\n    gap: 10px;\r\n    font-weight: 400;\r\n    font-size: 12.5px;\r\n    line-height: 1.5;\r\n    color: #556074;\r\n    cursor: pointer;\r\n  }\r\n \r\n  .form-asesoria .checkbox-terminos input[type=\"checkbox\"] {\r\n    margin-top: 3px;\r\n    flex-shrink: 0;\r\n    width: 16px;\r\n    height: 16px;\r\n    accent-color: var(--rojo);\r\n  }\r\n \r\n  .form-asesoria .checkbox-terminos a {\r\n    color: var(--rojo);\r\n    font-weight: 600;\r\n    text-decoration: none;\r\n  }\r\n \r\n  .form-asesoria .checkbox-terminos a:hover {\r\n    text-decoration: underline;\r\n  }\r\n \r\n  .form-asesoria .btn-enviar {\r\n    background-color: var(--rojo);\r\n    color: white;\r\n    font-weight: 600;\r\n    margin-top: 10px;\r\n    border: none;\r\n    border-radius: 20px;\r\n    padding: 12px 28px;\r\n    transition: transform 0.1s ease;\r\n  }\r\n \r\n  .form-asesoria .btn-enviar:hover {\r\n    color: white;\r\n    transform: translateY(-2px);\r\n  }\r\n \r\n  @media (max-width: 1000px) {\r\n\t  .form-card h2{\r\n\t\t  font-size:25px;\r\n\t  }\r\n    .form-asesoria .text-right {\r\n      text-align: center;\r\n    }\r\n    .form-asesoria .btn-enviar {\r\n      width: 100%;\r\n    }\r\n  }\r\n<\/style>\r\n \r\n<script>\r\ndocument.getElementById('formAsesoria').addEventListener('submit', function (e) {\r\n    e.preventDefault();\r\n \r\n    const form = e.target;\r\n    const btn = document.getElementById('btnEnviar');\r\n    const mensaje = document.getElementById('mensaje-estado');\r\n \r\n    const DOMINIO = \"https:\/\/www.bomberosyopal.com\/inicio\";\r\n    const ID_FORMULARIO = \"1052\";\r\n \r\n    const endpoint = `${DOMINIO}\/wp-json\/contact-form-7\/v1\/contact-forms\/${ID_FORMULARIO}\/feedback`;\r\n \r\n    if (!form.checkValidity()) {\r\n        form.reportValidity();\r\n        return;\r\n    }\r\n \r\n    const telefono = form.telefono.value.trim();\r\n    const regexColombia = \/^3[0-9]{9}$\/;\r\n \r\n    if (!regexColombia.test(telefono)) {\r\n        mensaje.style.display = \"block\";\r\n        mensaje.style.background = \"#fff3cd\";\r\n        mensaje.style.color = \"#856404\";\r\n        mensaje.textContent = \"Ingresa un n\u00famero de celular colombiano v\u00e1lido (10 d\u00edgitos, ej: 3001234567).\";\r\n        return;\r\n    }\r\n \r\n    const datos = new FormData(form);\r\n \r\n    if (form.privacidad.checked) {\r\n        datos.set('privacidad', 'Acepto el tratamiento de mis datos personales');\r\n    }\r\n \r\n    \/\/ === Campos ocultos obligatorios de Contact Form 7 ===\r\n    \/\/ Reemplaza estos 5 valores con los que copies del \"Ver c\u00f3digo fuente\"\r\n    \/\/ de la p\u00e1gina https:\/\/www.bomberosyopal.com\/inicio\/acbocolacademia\/\r\n    datos.append('_wpcf7', '1052');\r\n    datos.append('_wpcf7_version', '5.9.8');            \/\/ <-- pon la versi\u00f3n real\r\n    datos.append('_wpcf7_locale', 'es_ES');              \/\/ <-- pon el locale real\r\n    datos.append('_wpcf7_unit_tag', 'wpcf7-f1052-p1052-o1'); \/\/ <-- pon el unit_tag real\r\n    datos.append('_wpcf7_container_post', '1052');       \/\/ <-- pon el ID real del post\/p\u00e1gina contenedor\r\n    datos.append('_wpcf7_posted_data_hash', '');\r\n \r\n    btn.disabled = true;\r\n    btn.textContent = \"Enviando...\";\r\n    mensaje.style.display = \"none\";\r\n \r\n    fetch(endpoint, {\r\n        method: 'POST',\r\n        body: datos\r\n    })\r\n    .then(response => response.json())\r\n    .then(data => {\r\n        btn.disabled = false;\r\n        btn.textContent = \"Agendar Asesor\u00eda\";\r\n        mensaje.style.display = \"block\";\r\n \r\n        if (data.status === 'mail_sent') {\r\n            mensaje.style.background = \"#d4edda\";\r\n            mensaje.style.color = \"#155724\";\r\n            mensaje.textContent = data.message || \"\u00a1Gracias! Hemos recibido tu solicitud correctamente.\";\r\n            form.reset();\r\n        } else if (data.status === 'validation_failed') {\r\n            mensaje.style.background = \"#fff3cd\";\r\n            mensaje.style.color = \"#856404\";\r\n            mensaje.textContent = \"Por favor revisa los campos marcados en rojo.\";\r\n            console.log(\"Campos inv\u00e1lidos:\", data.invalid_fields);\r\n        } else {\r\n            mensaje.style.background = \"#f8d7da\";\r\n            mensaje.style.color = \"#721c24\";\r\n            mensaje.textContent = data.message || \"Ocurri\u00f3 un error. Intenta nuevamente.\";\r\n        }\r\n    })\r\n    .catch(error => {\r\n        btn.disabled = false;\r\n        btn.textContent = \"Agendar Asesor\u00eda\";\r\n        mensaje.style.display = \"block\";\r\n        mensaje.style.background = \"#f8d7da\";\r\n        mensaje.style.color = \"#721c24\";\r\n        mensaje.textContent = \"No se pudo conectar con el servidor. Verifica tu conexi\u00f3n.\";\r\n        console.error(\"Error de env\u00edo:\", error);\r\n    });\r\n});\r\n\t\r\n<\/script>\r\n<script>\r\ndocument.querySelectorAll('.brigada-item-header').forEach(header => {\r\n  header.addEventListener('click', () => {\r\n    const item = header.closest('.brigada-item');\r\n    const isActive = item.classList.contains('active');\r\n\r\n    \/\/ solo un acorde\u00f3n est\u00e9 abierto a la vez, comenta esto:\r\n     document.querySelectorAll('.brigada-item.active').forEach(el => {\r\n     if (el !== item) el.classList.remove('active');\r\n   });\r\n\r\n    item.classList.toggle('active', !isActive);\r\n  });\r\n});\r\n<\/script>\r\n<script>\r\ndocument.addEventListener('DOMContentLoaded', function () {\r\n  var input = document.getElementById('busquedaCursos');\r\n  var clearBtn = document.getElementById('clearBusqueda');\r\n  var tabs = document.querySelectorAll('.cursos-tab-btn');\r\n  var panels = document.querySelectorAll('.cursos-panel');\r\n\r\n  function norm(str) {\r\n    return (str || '').toLowerCase().normalize('NFD').replace(\/[\\u0300-\\u036f]\/g, '').trim();\r\n  }\r\n  function activarTab(tabId) {\r\n    tabs.forEach(b => b.classList.remove('active'));\r\n    panels.forEach(p => p.classList.remove('active'));\r\n    var btn = document.querySelector('.cursos-tab-btn[data-tab=\"' + tabId + '\"]');\r\n    var panel = document.getElementById(tabId);\r\n    if (btn) btn.classList.add('active');\r\n    if (panel) panel.classList.add('active');\r\n  }\r\n  tabs.forEach(btn => btn.addEventListener('click', () => activarTab(btn.dataset.tab)));\r\n\r\n  \/\/ indice card + modal\r\n  var indice = [];\r\n  panels.forEach(panel => {\r\n    panel.querySelectorAll('.col-xs-12').forEach(col => {\r\n      var card = col.querySelector('.curso-card');\r\n      if (!card) return;\r\n      var modalText = '';\r\n      var trigger = card.querySelector('[data-target]');\r\n      if (trigger) {\r\n        var modal = document.querySelector(trigger.getAttribute('data-target'));\r\n        if (modal) modalText = modal.innerText || '';\r\n      }\r\n      indice.push({ col, card, panelId: panel.id, buscable: norm(card.innerText + ' ' + modalText) });\r\n    });\r\n    if (!panel.querySelector('.cursos-no-results')) {\r\n      var div = document.createElement('div');\r\n      div.className = 'cursos-no-results';\r\n      div.style.display = 'none';\r\n      div.style.padding = '30px';\r\n      div.style.textAlign = 'center';\r\n      div.innerHTML = '<p>Sin resultados para \"<b class=\"no-res-q\"><\/b>\"<\/p>';\r\n      panel.querySelector('.cursos-contenedor').appendChild(div);\r\n    }\r\n  });\r\n\r\n  function clearHighlight() {\r\n    try { if (CSS.highlights) CSS.highlights.delete('cursos-busqueda'); } catch(e){}\r\n    document.querySelectorAll('.cursos-mark').forEach(m => {\r\n      m.replaceWith(document.createTextNode(m.textContent));\r\n    });\r\n    document.querySelectorAll('[data-original]').forEach(el => {\r\n      \/\/ solo restaurar si ya no tiene marks dentro\r\n      if (!el.querySelector('.cursos-mark')) {\r\n        el.innerHTML = el.dataset.original;\r\n      }\r\n    });\r\n  }\r\n\r\n  function highlightChrome(palabrasRaw) {\r\n    if (!CSS.highlights) return false;\r\n    var ranges = [];\r\n    var walker = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT, {\r\n      acceptNode: function(node) {\r\n        if (!node.parentElement ||!node.textContent.trim()) return NodeFilter.FILTER_REJECT;\r\n        \/\/ marca existente\r\n        if (node.parentElement.closest('mark')) return NodeFilter.FILTER_REJECT;\r\n\r\n        var inCard = node.parentElement.closest('.curso-card');\r\n        var inModal = node.parentElement.closest('.modal');\r\n\r\n        if (inCard) {\r\n          var col = inCard.closest('.col-xs-12');\r\n          if (!col || col.style.display === 'none') return NodeFilter.FILTER_REJECT;\r\n          return NodeFilter.FILTER_ACCEPT;\r\n        }\r\n        if (inModal) {\r\n          \/\/ resalta en todos los modales, aunque esten ocultos\r\n          return NodeFilter.FILTER_ACCEPT;\r\n        }\r\n        return NodeFilter.FILTER_REJECT;\r\n      }\r\n    });\r\n    var n;\r\n    while (n = walker.nextNode()) {\r\n      var normText = norm(n.textContent);\r\n      palabrasRaw.forEach(raw => {\r\n        var pNorm = norm(raw);\r\n        if (!pNorm) return;\r\n        var start = 0;\r\n        while ((start = normText.indexOf(pNorm, start))!== -1) {\r\n          try {\r\n            var range = new Range();\r\n            range.setStart(n, start);\r\n            range.setEnd(n, start + pNorm.length);\r\n            ranges.push(range);\r\n          } catch(e){}\r\n          start += pNorm.length;\r\n        }\r\n      });\r\n    }\r\n    if (ranges.length) {\r\n      CSS.highlights.set('cursos-busqueda', new Highlight(...ranges));\r\n      return true;\r\n    }\r\n    return false;\r\n  }\r\n\r\n  function highlightFallback(palabrasRaw) {\r\n    \/\/ cards visibles + TODOS los modales\r\n    var selectores = '.curso-card h3,.curso-card p,.modal.modal-title,.modal-curso-item h5,.modal-curso-item p,.brigada-temario span,.brigada-aprendizaje li,.brigada-nivel';\r\n    document.querySelectorAll(selectores).forEach(el => {\r\n      var col = el.closest('.col-xs-12');\r\n      \/\/ si es de una card oculta, no resaltar\r\n      if (col && col.style.display === 'none') return;\r\n      if (!el.dataset.original) el.dataset.original = el.innerHTML;\r\n      else el.innerHTML = el.dataset.original;\r\n      var html = el.innerHTML;\r\n      palabrasRaw.forEach(raw => {\r\n        var esc = raw.replace(\/[.*+?^${}()|[\\]\\\\]\/g, '\\\\$&');\r\n        html = html.replace(new RegExp('('+esc+')', 'gi'), '<mark class=\"cursos-mark\">$1<\/mark>');\r\n      });\r\n      el.innerHTML = html;\r\n    });\r\n  }\r\n\r\n  var t;\r\n  function filtrar() {\r\n    var qRaw = input.value || '';\r\n    var q = norm(qRaw);\r\n    var palabrasNorm = q.split(\/\\s+\/).filter(Boolean);\r\n    var palabrasRaw = qRaw.split(\/\\s+\/).filter(Boolean);\r\n\r\n    if (clearBtn) clearBtn.style.display = qRaw? 'block' : 'none';\r\n    clearHighlight();\r\n\r\n    if (!q) {\r\n      indice.forEach(i => i.col.style.display = '');\r\n      panels.forEach(p => p.querySelector('.cursos-no-results').style.display = 'none');\r\n      document.querySelectorAll('[data-original]').forEach(el => el.innerHTML = el.dataset.original);\r\n      return;\r\n    }\r\n\r\n    var count = { panelCursos:0, panelBrigadas:0, panelGratuitos:0 };\r\n    indice.forEach(item => {\r\n      var ok = palabrasNorm.every(pal => item.buscable.indexOf(pal)!== -1);\r\n      item.col.style.display = ok? '' : 'none';\r\n      if (ok) count[item.panelId]++;\r\n    });\r\n\r\n    panels.forEach(p => {\r\n      var vis = 0;\r\n      p.querySelectorAll('.col-xs-12').forEach(c => { if (c.style.display!== 'none') vis++; });\r\n      var nr = p.querySelector('.cursos-no-results');\r\n      nr.style.display = vis===0? 'block' : 'none';\r\n      nr.querySelector('.no-res-q').textContent = qRaw;\r\n    });\r\n\r\n    \/\/ resaltar en cards + modales\r\n    if (!highlightChrome(palabrasRaw)) highlightFallback(palabrasRaw);\r\n\r\n    var mejor = Object.keys(count).reduce((a,b) => count[a] > count[b]? a : b);\r\n    if (count[mejor] > 0) {\r\n      var activo = document.querySelector('.cursos-panel.active');\r\n      if (q.indexOf('gratis')!== -1 || q.indexOf('gratuito')!== -1) mejor = 'panelGratuitos';\r\n      if (!activo || count[activo.id] === 0) activarTab(mejor);\r\n    }\r\n  }\r\n\r\n  input.addEventListener('input', () => { clearTimeout(t); t = setTimeout(filtrar, 150); });\r\n  clearBtn.addEventListener('click', () => { input.value=''; filtrar(); input.focus(); });\r\n\r\n  if (window.jQuery) {\r\n    jQuery(document).on('shown.bs.modal', '.modal', function(){ if(input.value.trim()) filtrar(); });\r\n  }\r\n  document.addEventListener('shown.bs.modal', function(e){ if(input.value.trim()) setTimeout(filtrar, 10); });\r\n});\r\n<\/script>\r\n\r\n<script>\r\n\t\/\/menu hamburguesa\r\n\tconst btnMenu = document.getElementById('cursosMenuToggle');\r\nconst tabs = document.getElementById('cursosTabs');\r\n\r\nbtnMenu.addEventListener('click', (e) => {\r\n  e.stopPropagation();\r\n  const isOpen = tabs.classList.toggle('is-open');\r\n  btnMenu.classList.toggle('is-active', isOpen);\r\n  btnMenu.setAttribute('aria-expanded', isOpen);\r\n});\r\n\r\n\/\/ Cerrar al elegir un curso\r\ntabs.querySelectorAll('.cursos-tab-btn').forEach(btn => {\r\n  btn.addEventListener('click', () => {\r\n    if(window.innerWidth <= 1000){\r\n      tabs.classList.remove('is-open');\r\n      btnMenu.classList.remove('is-active');\r\n      btnMenu.setAttribute('aria-expanded','false');\r\n    }\r\n  });\r\n});\r\n\r\n\/\/ Cerrar al hacer click fuera\r\ndocument.addEventListener('click', (e) => {\r\n  if(!tabs.contains(e.target) && !btnMenu.contains(e.target)){\r\n    tabs.classList.remove('is-open');\r\n    btnMenu.classList.remove('is-active');\r\n    btnMenu.setAttribute('aria-expanded','false');\r\n  }\r\n});\r\n\t\r\n\t\r\n\t\/\/funcion para el numero de cursos ...............................................................................................................\r\n\tfunction actualizarContadoresCursos() {\r\n  document.querySelectorAll('.curso-card').forEach(function (card) {\r\n    \/\/ Solo tocamos badges de conteo real (no \"Gratis\" ni \"Formaci\u00f3n\")\r\n    var badge = card.querySelector('.badge-cursos:not(.badge-gratis)');\r\n    var btn = card.querySelector('.btn-ver-cursos[data-target]');\r\n    if (!badge || !btn) return;\r\n\r\n    var modal = document.querySelector(btn.getAttribute('data-target'));\r\n    if (!modal) return;\r\n\r\n    var items = modal.querySelectorAll('.modal-curso-item');\r\n    if (items.length === 0) return; \/\/ ej: brigadas, que no usan .modal-curso-item\r\n\r\n    var texto = items.length === 1 ? '1 curso' : items.length + ' cursos';\r\n\r\n    badge.textContent = texto;\r\n\r\n    var modalBadge = modal.querySelector('.modal-badge');\r\n    if (modalBadge) modalBadge.textContent = texto;\r\n  });\r\n}\r\n\r\ndocument.addEventListener('DOMContentLoaded', actualizarContadoresCursos);\r\n<\/script>\r\n\n    <\/div>\n<\/section>\n<p> <!-- ==================== ubicaciones con mapas ==================== --><\/p>\n<section class=\"ubicacion-section\">\n<div class=\"container\">\n    \t <!-- Columna izquierda: Mapa -->\r\n        <div class=\"col-md-7 col-sm-6\">\r\n          <div class=\"map-container\">\r\n            <iframe src=\"https:\/\/www.google.com\/maps\/embed?pb=!1m16!1m12!1m3!1d1019.6634780592993!2d-72.40750051978911!3d5.365414231838723!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!2m1!1sacbocol%20yopal%20mapas!5e1!3m2!1ses!2sco!4v1784907064977!5m2!1ses!2sco\" width=\"600\" height=\"450\" style=\"border:0;\" allowfullscreen=\"\" loading=\"lazy\" referrerpolicy=\"strict-origin-when-cross-origin\"><\/iframe>\r\n          <\/div>\r\n        <\/div>\r\n\t\r\n        <!-- Columna derecha: Academia F\u00edsica -->\r\n        <div class=\"col-md-5 col-sm-6\">\r\n          <h2 class=\"ubicacion-titulo\">Sede de Entrenamiento<\/h2>\r\n          <p class=\"ubicacion-descripcion\">\r\n            Espacio optimizado para pr\u00e1cticas controladas de control de incendios, rescate, manejo de equipos y emergencias.\r\n          <\/p>\r\n          \r\n          <div class=\"info-block\">\r\n            <div class=\"info-icon-container\">\r\n              <i class=\"bi bi-telephone-fill\"><\/i>\r\n            <\/div>\r\n            <div class=\"info-content\">\r\n              <h4>L\u00ednea de Atenci\u00f3n<\/h4>\r\n              <p><a href=\"tel:3219503696\">321 950 3696<\/a><\/p>\r\n            <\/div>\r\n          <\/div>\r\n          \r\n          <div class=\"info-block\">\r\n            <div class=\"info-icon-container\">\r\n             <i class=\"bi bi-geo-alt-fill\"><\/i>\r\n            <\/div>\r\n            <div class=\"info-content\">\r\n              <h4>Sede de Entrenamiento<\/h4>\r\n              <p>Antigua planta de agua potable, Yopal, Casanare<\/p>\r\n            <\/div>\r\n          <\/div>\r\n          \r\n          <div class=\"info-block\">\r\n            <div class=\"info-icon-container\">\r\n              <i class=\"bi bi-envelope-fill\"><\/i>\r\n            <\/div>\r\n            <div class=\"info-content\">\r\n              <h4>Contacto Institucional<\/h4>\r\n              <p><a href=\"mailto:direccionacademica@bomberosyopal.com\">direccionacademica@bomberosyopal.com<\/a><\/p>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n\n    <\/div>\n<\/section>\n<section class=\"ubicacion-section\">\n<div class=\"container\">\n    <!-- Columna Izquierda: Informaci\u00f3n de ACBOCOL -->\r\n        <div class=\"col-md-5 col-sm-6\">\r\n          <h2 class=\"ubicacion-titulo\">Bomberos Voluntarios de Yopal.<\/h2>\r\n          <p class=\"ubicacion-descripcion\">\r\n            Aqu\u00ed podr\u00e1 acercarse a la oficina de Coordinaci\u00f3n Acad\u00e9mica para solicitar informaci\u00f3n personalmente.\r\n          <\/p>\r\n          \r\n          <!-- Tel\u00e9fono -->\r\n          <div class=\"info-block\">\r\n            <div class=\"info-icon-container\">\r\n              <i class=\"bi bi-telephone-fill\"><\/i>\r\n            <\/div>\r\n            <div class=\"info-content\">\r\n              <h4>L\u00ednea de Atenci\u00f3n<\/h4>\r\n              <p><a href=\"tel:3219503696\">321 950 3696<\/a><\/p>\r\n            <\/div>\r\n          <\/div>\r\n          \r\n          <!-- Direcci\u00f3n -->\r\n          <div class=\"info-block\">\r\n            <div class=\"info-icon-container\">\r\n             <i class=\"bi bi-geo-alt-fill\"><\/i>\r\n            <\/div>\r\n            <div class=\"info-content\">\r\n              <h4>Sede de Formaci\u00f3n<\/h4>\r\n              <p>Calle 24 N\u00b0 17 \u2013 30, Yopal, Casanare<\/p>\r\n            <\/div>\r\n          <\/div>\r\n          \r\n          <!-- Correo -->\r\n          <div class=\"info-block\">\r\n            <div class=\"info-icon-container\">\r\n              <i class=\"bi bi-envelope-fill\"><\/i>\r\n            <\/div>\r\n            <div class=\"info-content\">\r\n              <h4>Contacto Institucional<\/h4>\r\n              <p><a href=\"mailto:direccionacademica@bomberosyopal.com\">direccionacademica@bomberosyopal.com<\/a><\/p>\r\n            <\/div>\r\n          <\/div>\r\n          \r\n        <\/div>\r\n        \r\n        <!-- Columna Derecha: Mapa de Google en la Estaci\u00f3n de Bomberos -->\r\n        <div class=\"col-md-7 col-sm-6\">\r\n          <div class=\"map-container\">\r\n            <iframe src=\"https:\/\/www.google.com\/maps\/embed?pb=!1m14!1m8!1m3!1d496.56722642527933!2d-72.3958517596845!3d5.3345305782361745!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x8e6b0db0d06bc433%3A0xee883dc50f8132fd!2sBOMBEROS%20VOLUNTARIOS%20DE%20YOPAL!5e0!3m2!1ses!2sco!4v1784208689603!5m2!1ses!2sco\" width=\"600\" height=\"450\" style=\"border:0;\" allowfullscreen=\"\" loading=\"lazy\" referrerpolicy=\"strict-origin-when-cross-origin\"><\/iframe>\r\n          <\/div>\r\n        <\/div>\r\n\r\n\n    <\/div>\n<\/section>\n<p>  <script src=\"https:\/\/maxcdn.bootstrapcdn.com\/bootstrap\/3.4.1\/js\/bootstrap.min.js\"><\/script><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Academia de Bomberos Yopal Ofrecemos cursos y capacitaciones especializadas para empresas, brindando la formaci\u00f3n t\u00e9cnica y operativa necesaria para que su personal se certifique y est\u00e9 calificado para responder ante cualquier emergencia. Cursos Contactos +20 Cursos disponibles. +50 Empresas capacitadas. +1.200 Certificaciones emitidas. DESDE 2022 Compartiendo nuestra experiencia. 321 9503696 &times; \u2715 Cursos Cursos para [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-505","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.bomberosyopal.com\/inicio\/wp-json\/wp\/v2\/pages\/505","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bomberosyopal.com\/inicio\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.bomberosyopal.com\/inicio\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.bomberosyopal.com\/inicio\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bomberosyopal.com\/inicio\/wp-json\/wp\/v2\/comments?post=505"}],"version-history":[{"count":537,"href":"https:\/\/www.bomberosyopal.com\/inicio\/wp-json\/wp\/v2\/pages\/505\/revisions"}],"predecessor-version":[{"id":1760,"href":"https:\/\/www.bomberosyopal.com\/inicio\/wp-json\/wp\/v2\/pages\/505\/revisions\/1760"}],"wp:attachment":[{"href":"https:\/\/www.bomberosyopal.com\/inicio\/wp-json\/wp\/v2\/media?parent=505"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}