/*!
 * Simple Icons CSS - Sin archivos de fuente externos
 * Solo CSS puro para iconos básicos
 */

/* Base Icon Styles - SIN referencias a fuentes externas */
.fa, .fas, .far, .fab {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-family: inherit;
  text-align: center;
  vertical-align: middle;
}

/* Sizing Classes */
.fa-xs { font-size: 0.75em; }
.fa-sm { font-size: 0.875em; }
.fa-lg { font-size: 1.33333em; line-height: 0.75em; vertical-align: -0.0667em; }
.fa-xl { font-size: 1.5em; }
.fa-2x { font-size: 2em; }
.fa-3x { font-size: 3em; }
.fa-4x { font-size: 4em; }
.fa-5x { font-size: 5em; }

/* Utility Classes */
.fa-fw { text-align: center; width: 1.25em; }
.fa-pull-left { float: left; margin-right: 0.3em; }
.fa-pull-right { float: right; margin-left: 0.3em; }

/* Animation Classes */
.fa-spin { animation: fa-spin 2s linear infinite; }
@keyframes fa-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.fa-home::before { content: "HOME"; font-size: 0.6em; font-weight: bold; }
.fa-user::before { content: "USER"; font-size: 0.6em; font-weight: bold; }
.fa-heart::before { content: "♥"; color: #e74c3c; }
.fa-star::before { content: "★"; color: #f39c12; }
.fa-star-red::before { content: "★"; color: #f33012; }
.fa-star-green::before { content: "★"; color: #12f330; }
.fa-search::before { content: "SEARCH"; font-size: 0.5em; font-weight: bold; }
.fa-envelope::before { content: "MAIL"; font-size: 0.6em; font-weight: bold; }
.fa-phone::before { content: "PHONE"; font-size: 0.5em; font-weight: bold; }
.fa-map-marker-alt::before { content: "📍"; }
.fa-shopping-cart::before { content: "CART"; font-size: 0.6em; font-weight: bold; }
.fa-graduation-cap::before { content: "Mapas"; font-size: 0.6em; font-weight: bold; }
.fa-book::before { content: "Libros"; font-size: 0.6em; font-weight: bold; }
.fa-pencil-alt::before { content: "Lapices"; font-size: 0.6em; font-weight: bold; }
.fa-clock::before { content: "TIME"; font-size: 0.6em; font-weight: bold; color: #f39c12; }
.fa-exclamation-triangle::before { content: "!"; font-size: 1.2em; font-weight: bold; color: #f39c12; }
.fa-money-bill::before { content: "$"; font-size: 1.2em; font-weight: bold; color: #27ae60; }
.fa-lightbulb::before { content: "IDEA"; font-size: 0.6em; font-weight: bold; color: #f39c12; }
.fa-check-circle::before { content: "✓"; font-size: 1.2em; font-weight: bold; color: #27ae60; }
.fa-list-alt::before { content: "LIST"; font-size: 0.6em; font-weight: bold; }
.fa-truck::before { content: "TRUCK"; font-size: 0.5em; font-weight: bold; }
.fa-ban::before { content: "NO"; font-size: 0.7em; font-weight: bold; color: #e74c3c; }
.fa-eye::before { content: "EYE"; font-size: 0.6em; font-weight: bold; }
.fa-users::before { content: "USERS"; font-size: 0.5em; font-weight: bold; }
.fa-piggy-bank::before { content: "SAVE"; font-size: 0.6em; font-weight: bold; color: #f39c12; }
.fa-mouse-pointer::before { content: "CLICK"; font-size: 0.5em; font-weight: bold; }
.fa-users-cog::before { content: "ADMIN"; font-size: 0.5em; font-weight: bold; }
.fa-calendar-alt::before { content: "DATE"; font-size: 0.6em; font-weight: bold; }
.fa-school::before { content: "SCHOOL"; font-size: 0.4em; font-weight: bold; }
.fa-info-circle::before { content: "i"; font-size: 1.2em; font-weight: bold; color: #3498db; }
.fa-shield-alt::before { content: "SAFE"; font-size: 0.6em; font-weight: bold; color: #27ae60; }
.fa-rocket::before { content: "GO"; font-size: 0.7em; font-weight: bold; color: #e74c3c; }
.fa-play::before { content: "▶"; font-size: 1em; color: #27ae60; }
.fa-arrow-right::before { content: "→"; font-size: 1.2em; font-weight: bold; }
.fa-check-double::before { content: "✓✓"; color: #27ae60; font-weight: bold; }
.fa-times::before, .fa-close::before { content: "×"; font-size: 1.3em; font-weight: bold; color: #e74c3c; }
.fa-bars::before { content: "☰"; font-size: 1em; }
.fa-bars-orange::before { content: "☰"; font-size: 1em; color: #e7a53c;}
.fa-bars-gris::before { content: "☰"; font-size: 1em; color: #d0d1d3;}
.fa-bars-rosa::before { content: "☰"; font-size: 1em; color: #d93da8;}


.fa-plus::before { content: "+"; font-size: 1.2em; font-weight: bold; }
.fa-minus::before { content: "−"; font-size: 1.2em; font-weight: bold; }
.fa-wifi::before { content: "WIFI"; font-size: 0.6em; font-weight: bold; }
.fa-facebook::before { content: "f"; font-weight: bold; color: #1877f2; background: #f0f0f0; padding: 2px 4px; border-radius: 2px; }
.fa-instagram::before { content: "ig"; font-weight: bold; color: #e4405f; font-size: 0.7em; }
.fa-whatsapp::before { content: "wsp"; font-weight: bold; color: #25d366; font-size: 0.7em; }

/* Estilos mejorados para los iconos de texto */
.fa::before {
  display: inline-block;
  min-width: 1em;
  text-align: center;
  padding: 1px 2px;
  border-radius: 2px;
  background: rgba(0,0,0,0.05);
  margin: 0 1px;
}

/* Colores específicos para contextos */
.text-primary .fa::before { background: rgba(43, 124, 233, 0.1); }
.text-success .fa::before { background: rgba(39, 174, 96, 0.1); }
.text-warning .fa::before { background: rgba(243, 156, 18, 0.1); }
.text-danger .fa::before { background: rgba(231, 76, 60, 0.1); }

/* Iconos especiales con símbolos Unicode básicos que SÍ funcionan */
.fa-check-circle.unicode::before { content: "✓"; }
.fa-times.unicode::before { content: "×"; }
.fa-star.unicode::before { content: "★"; }
.fa-heart.unicode::before { content: "♥"; }
.fa-arrow-right.unicode::before { content: "→"; }
.fa-play.unicode::before { content: "▶"; }

/* Asegurar que no haya conflictos */
* {
  font-family: inherit;
}

/* Eliminar cualquier referencia a Font Awesome real */
@media screen {
  .fa, .fas, .far, .fab {
    font-family: inherit !important;
  }
}/*!
 * Simple Icons CSS - Usando CSS puro con formas geométricas
 * Garantiza que los iconos aparezcan en todos los navegadores
 */

/* Base Icon Styles */
.fa, .fas, .far, .fab {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  position: relative;
  width: 1em;
  height: 1em;
  vertical-align: middle;
}

/* Sizing Classes */
.fa-xs { font-size: 0.75em; }
.fa-sm { font-size: 0.875em; }
.fa-lg { font-size: 1.33333em; }
.fa-xl { font-size: 1.5em; }
.fa-2x { font-size: 2em; }
.fa-3x { font-size: 3em; }
.fa-4x { font-size: 4em; }
.fa-5x { font-size: 5em; }

/* Utility Classes */
.fa-fw { text-align: center; width: 1.25em; }

/* Animation Classes */
.fa-spin { animation: fa-spin 2s linear infinite; }
@keyframes fa-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* ICONOS CREADOS CON CSS PURO */

/* Clock Icon */
.fa-clock::before {
  content: "";
  width: 1em;
  height: 1em;
  border: 2px solid #f39c12;
  border-radius: 50%;
  display: inline-block;
  position: relative;
}

.fa-clock::after {
  content: "";
  position: absolute;
  top: 25%;
  left: 48%;
  width: 2px;
  height: 25%;
  background: #f39c12;
  transform-origin: bottom;
}

/* Exclamation Triangle */
.fa-exclamation-triangle::before {
  content: "!";
  color: #f39c12;
  font-weight: bold;
  font-size: 1.2em;
  font-family: Arial, sans-serif;
  display: inline-block;
  width: 1em;
  height: 1em;
  text-align: center;
  line-height: 1;
  background: 
    linear-gradient(45deg, transparent 40%, #f39c12 40%, #f39c12 60%, transparent 60%),
    linear-gradient(-45deg, transparent 40%, #f39c12 40%, #f39c12 60%, transparent 60%);
  background-size: 50% 50%;
  background-position: 0 0, 100% 0;
  background-repeat: no-repeat;
}

/* Money Bill */
.fa-money-bill::before {
  content: "$";
  color: #27ae60;
  font-weight: bold;
  font-family: Arial, sans-serif;
  background: #e8f5e8;
  border: 1px solid #27ae60;
  border-radius: 3px;
  padding: 2px 4px;
  display: inline-block;
  min-width: 1em;
  text-align: center;
}

/* Lightbulb */
.fa-lightbulb::before {
  content: "";
  width: 0.8em;
  height: 0.8em;
  background: #f39c12;
  border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%;
  display: inline-block;
  position: relative;
  margin: 0 0.1em;
}

/* Check Circle */
.fa-check-circle::before {
  content: "✓";
  color: #27ae60;
  font-weight: bold;
  font-family: Arial, sans-serif;
  background: #e8f5e8;
  border-radius: 50%;
  width: 1em;
  height: 1em;
  display: inline-block;
  text-align: center;
  line-height: 1;
}

/* List Alt */
.fa-list-alt::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background: 
    linear-gradient(to right, #333 0%, #333 15%, transparent 15%),
    linear-gradient(to right, #333 0%, #333 15%, transparent 15%),
    linear-gradient(to right, #333 0%, #333 15%, transparent 15%);
  background-size: 100% 25%;
  background-position: 0 20%, 0 50%, 0 80%;
  background-repeat: no-repeat;
}

/* Shopping Cart */
.fa-shopping-cart::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 0.8em;
  border: 2px solid #333;
  border-radius: 0 0 4px 4px;
  position: relative;
  margin-bottom: 0.1em;
}

/* Truck */
.fa-truck::before {
  content: "";
  display: inline-block;
  width: 1.2em;
  height: 0.6em;
  background: #333;
  border-radius: 2px;
  position: relative;
  margin: 0.2em 0;
}

.fa-truck::after {
  content: "";
  position: absolute;
  bottom: -2px;
  right: 2px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #333;
  box-shadow: -8px 0 0 #333;
}

/* Users */
.fa-users::before {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-radius: 50%;
  background: #333;
  box-shadow: 0.4em 0 0 #333;
  position: relative;
  margin: 0.25em 0.25em 0.25em 0;
}

/* Rocket */
.fa-rocket::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 0.3em solid transparent;
  border-right: 0.3em solid transparent;
  border-bottom: 1em solid #e74c3c;
  position: relative;
  margin: 0 0.2em;
}

/* Play Button */
.fa-play::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 0.8em solid #27ae60;
  border-top: 0.4em solid transparent;
  border-bottom: 0.4em solid transparent;
  margin-left: 0.1em;
}

/* Arrow Right */
.fa-arrow-right::before {
  content: "";
  display: inline-block;
  width: 0.6em;
  height: 0;
  border-top: 2px solid #333;
  position: relative;
}

.fa-arrow-right::after {
  content: "";
  position: absolute;
  right: -2px;
  top: -4px;
  width: 0;
  height: 0;
  border-left: 6px solid #333;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
}

/* ICONOS CON TEXTO SIMPLE PARA MÁXIMA COMPATIBILIDAD */

/* Home */
.fa-home::before {
  content: "🏠";
  font-family: Arial, sans-serif;
  display: inline-block;
  text/*!
 * Simple Icons CSS - Versión con símbolos básicos garantizados
 * Compatible con todos los navegadores usando solo caracteres ASCII y símbolos básicos
 */

/* Base Icon Styles */
.fa, .fas, .far, .fab {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-family: "Times New Roman", serif;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
  min-width: 1em;
}

/* Sizing Classes */
.fa-xs { font-size: 0.75em; }
.fa-sm { font-size: 0.875em; }
.fa-lg { font-size: 1.33333em; line-height: 0.75em; vertical-align: -0.0667em; }
.fa-xl { font-size: 1.5em; }
.fa-2x { font-size: 2em; }
.fa-3x { font-size: 3em; }
.fa-4x { font-size: 4em; }
.fa-5x { font-size: 5em; }

/* Utility Classes */
.fa-fw { text-align: center; width: 1.25em; }
.fa-pull-left { float: left; margin-right: 0.3em; }
.fa-pull-right { float: right; margin-left: 0.3em; }

/* Animation Classes */
.fa-spin { animation: fa-spin 2s linear infinite; }
@keyframes fa-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* ICONOS USANDO SIMBOLOS UNICODE BÁSICOS - GARANTIZADOS */
.fa-home::before { content: "⌂"; }
.fa-user::before { content: "☺"; }
.fa-heart::before { content: "♥"; color: #e74c3c; }
.fa-star::before { content: "★"; color: #f39c12; }
.fa-search::before { content: "○"; border: 2px solid currentColor; border-radius: 50%; }
.fa-envelope::before { content: "✉"; }
.fa-phone::before { content: "☎"; }
.fa-map-marker-alt::before { content: "▼"; color: #e74c3c; }
.fa-shopping-cart::before { content: "□"; border: 2px solid currentColor; }
.fa-graduation-cap::before { content: "⌃"; }
.fa-book::before { content: "▢"; }
.fa-pencil-alt::before { content: "✎"; }
.fa-clock::before { content: "○"; position: relative; }
.fa-exclamation-triangle::before { content: "△"; color: #f39c12; }
.fa-money-bill::before { content: "$"; color: #27ae60; background: #f8f9fa; padding: 2px 4px; border-radius: 3px; }
.fa-lightbulb::before { content: "◯"; background: #f39c12; border-radius: 50%; color: white; padding: 2px; }
.fa-check-circle::before { content: "✓"; color: #27ae60; background: #f8f9fa; border-radius: 50%; padding: 2px; }
.fa-list-alt::before { content: "≡"; }
.fa-truck::before { content: "▬"; }
.fa-ban::before { content: "⊘"; color: #e74c3c; }
.fa-eye::before { content: "◉"; }
.fa-users::before { content: "☺☺"; letter-spacing: -0.1em; }
.fa-piggy-bank::before { content: "$"; background: #f39c12; border-radius: 50%; padding: 2px 4px; color: white; }
.fa-mouse-pointer::before { content: "►"; }
.fa-users-cog::before { content: "☺⚙"; }
.fa-calendar-alt::before { content: "▦"; }
.fa-school::before { content: "▲"; }
.fa-info-circle::before { content: "i"; color: #3498db; background: #f8f9fa; border-radius: 50%; padding: 2px 4px; }
.fa-shield-alt::before { content: "◊"; color: #27ae60; }
.fa-rocket::before { content: "▲"; color: #e74c3c; }
.fa-play::before { content: "►"; color: #27ae60; }
.fa-arrow-right::before { content: "→"; }
.fa-check-double::before { content: "✓✓"; color: #27ae60; }
.fa-times::before, .fa-close::before { content: "×"; color: #e74c3c; font-size: 1.2em; }
.fa-bars::before { content: "☰"; }
.fa-plus::before { content: "+"; }
.fa-minus::before { content: "−"; }
.fa-wifi::before { content: ")))"; transform: rotate(45deg); }

/* Iconos de redes sociales */
.fa-facebook::before { content: "f"; color: #1877f2; background: #f8f9fa; border-radius: 3px; padding: 2px 4px; }
.fa-instagram::before { content: "◉"; color: #e4405f; border: 2px solid currentColor; border-radius: 20%; }
.fa-whatsapp::before { content: "W"; color: #25d366; background: #f8f9fa; border-radius: 50%; padding: 2px; }

/* Mejoras visuales adicionales */
.fa-clock::before {
  content: "○";
}

.fa-clock::after {
  content: "|";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 0.6em;
}

/* Estilos especiales para problemas identificados */
.problem-icon .fa::before {
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  line-height: 1.2;
  text-align: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
}

.solution-icon .fa::before {
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2;
  text-align: center;
  border-radius: 50%;
  background: rgba(43, 124, 233, 0.1);
}

.benefit-icon .fa::before {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  line-height: 1.5;
  text-align: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
}

.step-icon .fa::before {
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2;
  text-align: center;
}

.benefit-icon-box .fa::before {
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  line-height: 1.2;
  text-align: center;
}

/* Fallback adicional para máxima compatibilidad */
.fa-home.fallback::before { content: "H"; background: #3498db; color: white; padding: 2px 4px; border-radius: 3px; }
.fa-user.fallback::before { content: "U"; background: #9b59b6; color: white; padding: 2px 4px; border-radius: 50%; }
.fa-heart.fallback::before { content: "♥"; }
.fa-star.fallback::before { content: "★"; }
.fa-search.fallback::before { content: "?"; background: #34495e; color: white; padding: 2px 4px; border-radius: 50%; }
.fa-envelope.fallback::before { content: "@"; background: #e67e22; color: white; padding: 2px 4px; border-radius: 3px; }
.fa-phone.fallback::before { content: "T"; background: #27ae60; color: white; padding: 2px 4px; border-radius: 3px; }

/* Asegurar que todos los iconos tengan el tamaño correcto */
[class*="fa-"]::before {
  display: inline-block;
  text-align: center;
  text-decoration: none;
}/*!
 * Simple Icons CSS - Compatible con todos los navegadores
 * Usa caracteres Unicode básicos y símbolos seguros
 */

/* Base Icon Styles */
.fa, .fas, .far, .fab {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-family: Arial, sans-serif;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
}

/* Sizing Classes */
.fa-xs { font-size: 0.75em; }
.fa-sm { font-size: 0.875em; }
.fa-lg { font-size: 1.33333em; line-height: 0.75em; vertical-align: -0.0667em; }
.fa-xl { font-size: 1.5em; }
.fa-2x { font-size: 2em; }
.fa-3x { font-size: 3em; }
.fa-4x { font-size: 4em; }
.fa-5x { font-size: 5em; }

/* Utility Classes */
.fa-fw { text-align: center; width: 1.25em; }
.fa-pull-left { float: left; margin-right: 0.3em; }
.fa-pull-right { float: right; margin-left: 0.3em; }

/* Animation Classes */
.fa-spin { animation: fa-spin 2s linear infinite; }
@keyframes fa-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* Iconos básicos con caracteres Unicode seguros */
.fa-home::before { content: "⌂"; }
.fa-user::before { content: "👤"; }
.fa-heart::before { content: "♥"; color: #e74c3c; }
.fa-star::before { content: "★"; color: #f39c12; }
.fa-search::before { content: "🔍"; }
.fa-envelope::before { content: "✉"; }
.fa-phone::before { content: "☎"; }
.fa-map-marker-alt::before { content: "📍"; }
.fa-shopping-cart::before { content: "🛒"; }
.fa-graduation-cap::before { content: "🎓"; }
.fa-book::before { content: "📖"; }
.fa-pencil-alt::before { content: "✏"; }
.fa-clock::before { content: "⏰"; }
.fa-exclamation-triangle::before { content: "⚠"; color: #f39c12; }
.fa-money-bill::before { content: "💰"; }
.fa-lightbulb::before { content: "💡"; }
.fa-check-circle::before { content: "✓"; color: #27ae60; font-weight: bold; }
.fa-list-alt::before { content: "📋"; }
.fa-truck::before { content: "🚚"; }
.fa-ban::before { content: "🚫"; }
.fa-eye::before { content: "👁"; }
.fa-users::before { content: "👥"; }
.fa-piggy-bank::before { content: "🐷"; }
.fa-mouse-pointer::before { content: "👆"; }
.fa-users-cog::before { content: "👥"; }
.fa-calendar-alt::before { content: "📅"; }
.fa-school::before { content: "🏫"; }
.fa-info-circle::before { content: "ℹ"; color: #3498db; font-weight: bold; }
.fa-shield-alt::before { content: "🛡"; }
.fa-rocket::before { content: "🚀"; }
.fa-play::before { content: "▶"; color: #27ae60; }
.fa-arrow-right::before { content: "→"; }
.fa-check-double::before { content: "✓✓"; color: #27ae60; }
.fa-facebook::before { content: "f"; color: #1877f2; font-weight: bold; }
.fa-instagram::before { content: "@"; color: #e4405f; font-weight: bold; }
.fa-whatsapp::before { content: "💬"; color: #25d366; }
.fa-times::before, .fa-close::before { content: "×"; color: #e74c3c; font-size: 1.2em; }
.fa-bars::before { content: "☰"; }
.fa-plus::before { content: "+"; font-weight: bold; }
.fa-minus::before { content: "−"; }
.fa-wifi::before { content: "📶"; }

/* Iconos alternativos con símbolos básicos para mejor compatibilidad */
.fa-home.alt::before { content: "🏠"; }
.fa-user.alt::before { content: "👤"; }
.fa-envelope.alt::before { content: "📧"; }
.fa-phone.alt::before { content: "📞"; }
.fa-clock.alt::before { content: "🕐"; }
.fa-exclamation-triangle.alt::before { content: "⚠️"; }
.fa-money-bill.alt::before { content: "💵"; }
.fa-lightbulb.alt::before { content: "💡"; }
.fa-check-circle.alt::before { content: "✅"; }
.fa-list-alt.alt::before { content: "📋"; }
.fa-truck.alt::before { content: "🚛"; }
.fa-ban.alt::before { content: "🚫"; }
.fa-eye.alt::before { content: "👁️"; }
.fa-users.alt::before { content: "👥"; }
.fa-rocket.alt::before { content: "🚀"; }
.fa-play.alt::before { content: "▶️"; }

/* Fallback para navegadores muy antiguos */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .fa-home::before { content: "H"; }
  .fa-user::before { content: "U"; }
  .fa-heart::before { content: "♥"; }
  .fa-star::before { content: "*"; }
  .fa-search::before { content: "?"; }
  .fa-envelope::before { content: "@"; }
  .fa-phone::before { content: "T"; }
  .fa-map-marker-alt::before { content: "M"; }
  .fa-shopping-cart::before { content: "C"; }
  .fa-graduation-cap::before { content: "G"; }
  .fa-book::before { content: "B"; }
  .fa-pencil-alt::before { content: "P"; }
  .fa-clock::before { content: "O"; }
  .fa-exclamation-triangle::before { content: "!"; }
  .fa-money-bill::before { content: "$"; }
  .fa-lightbulb::before { content: "L"; }
  .fa-check-circle::before { content: "✓"; }
  .fa-list-alt::before { content: "="; }
  .fa-truck::before { content: "T"; }
  .fa-ban::before { content: "X"; }
  .fa-eye::before { content: "E"; }
  .fa-users::before { content: "U"; }
  .fa-piggy-bank::before { content: "$"; }
  .fa-mouse-pointer::before { content: ">"; }
  .fa-users-cog::before { content: "U"; }
  .fa-calendar-alt::before { content: "C"; }
  .fa-school::before { content: "S"; }
  .fa-info-circle::before { content: "i"; }
  .fa-shield-alt::before { content: "S"; }
  .fa-rocket::before { content: "R"; }
  .fa-play::before { content: ">"; }
  .fa-arrow-right::before { content: ">"; }
  .fa-check-double::before { content: "✓"; }
  .fa-facebook::before { content: "f"; }
  .fa-instagram::before { content: "i"; }
  .fa-whatsapp::before { content: "w"; }
}

/* Estilos adicionales para mejorar la apariencia */
.fa-home::before,
.fa-user::before,
.fa-heart::before,
.fa-star::before,
.fa-search::before,
.fa-envelope::before,
.fa-phone::before,
.fa-map-marker-alt::before,
.fa-shopping-cart::before,
.fa-graduation-cap::before,
.fa-book::before,
.fa-pencil-alt::before,
.fa-clock::before,
.fa-exclamation-triangle::before,
.fa-money-bill::before,
.fa-lightbulb::before,
.fa-check-circle::before,
.fa-list-alt::before,
.fa-truck::before,
.fa-ban::before,
.fa-eye::before,
.fa-users::before,
.fa-piggy-bank::before,
.fa-mouse-pointer::before,
.fa-users-cog::before,
.fa-calendar-alt::before,
.fa-school::before,
.fa-info-circle::before,
.fa-shield-alt::before,
.fa-rocket::before,
.fa-play::before,
.fa-arrow-right::before,
.fa-check-double::before,
.fa-times::before {
  display: inline-block;
  width: 1em;
  height: 1em;
  text-align: center;
  line-height: 1;
}/*!
 * Font Awesome Icons - CSS Only Version
 * Simplified version using CSS symbols instead of font files
 */

/* Base Icon Styles */
.fa, .fas, .far, .fab {
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-family: inherit;
  font-weight: bold;
}

/* Sizing Classes */
.fa-xs { font-size: 0.75em; }
.fa-sm { font-size: 0.875em; }
.fa-lg { font-size: 1.33333em; line-height: 0.75em; vertical-align: -0.0667em; }
.fa-xl { font-size: 1.5em; }
.fa-2x { font-size: 2em; }
.fa-3x { font-size: 3em; }
.fa-4x { font-size: 4em; }
.fa-5x { font-size: 5em; }
.fa-6x { font-size: 6em; }

/* Utility Classes */
.fa-fw { text-align: center; width: 1.25em; }
.fa-pull-left { float: left; margin-right: 0.3em; }
.fa-pull-right { float: right; margin-left: 0.3em; }

/* Animation Classes */
.fa-spin { animation: fa-spin 2s linear infinite; }
.fa-pulse { animation: fa-spin 1s steps(8) infinite; }

@keyframes fa-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* Icon Symbols using Unicode and CSS content */
.fa-home::before { content: "🏠"; }
.fa-user::before { content: "👤"; }
.fa-heart::before { content: "❤️"; }
.fa-star::before { content: "⭐"; }
.fa-search::before { content: "🔍"; }
.fa-envelope::before { content: "✉️"; }
.fa-phone::before { content: "📞"; }
.fa-map-marker-alt::before { content: "📍"; }
.fa-shopping-cart::before { content: "🛒"; }
.fa-graduation-cap::before { content: "🎓"; }
.fa-book::before { content: "📚"; }
.fa-pencil-alt::before { content: "✏️"; }
.fa-clock::before { content: "🕐"; }
.fa-exclamation-triangle::before { content: "⚠️"; }
.fa-money-bill::before { content: "💵"; }
.fa-lightbulb::before { content: "💡"; }
.fa-check-circle::before { content: "✅"; }
.fa-list-alt::before { content: "📋"; }
.fa-truck::before { content: "🚛"; }
.fa-ban::before { content: "🚫"; }
.fa-eye::before { content: "👁️"; }
.fa-users::before { content: "👥"; }
.fa-piggy-bank::before { content: "🐷"; }
.fa-mouse-pointer::before { content: "👆"; }
.fa-users-cog::before { content: "👥⚙️"; }
.fa-calendar-alt::before { content: "📅"; }
.fa-school::before { content: "🏫"; }
.fa-info-circle::before { content: "ℹ️"; }
.fa-shield-alt::before { content: "🛡️"; }
.fa-rocket::before { content: "🚀"; }
.fa-play::before { content: "▶️"; }
.fa-arrow-right::before { content: "➡️"; }
.fa-check-double::before { content: "✔️✔️"; }
.fa-facebook::before { content: "📘"; }
.fa-instagram::before { content: "📷"; }
.fa-whatsapp::before { content: "💬"; }
.fa-wifi::before { content: "📶"; }
.fa-times::before, .fa-close::before { content: "❌"; }
.fa-bars::before { content: "☰"; }
.fa-plus::before { content: "➕"; }
.fa-minus::before { content: "➖"; }
.fa-download::before { content: "⬇️"; }
.fa-upload::before { content: "⬆️"; }
.fa-edit::before { content: "✏️"; }
.fa-trash::before { content: "🗑️"; }
.fa-save::before { content: "💾"; }
.fa-print::before { content: "🖨️"; }
.fa-share::before { content: "📤"; }
.fa-external-link::before { content: "🔗"; }
.fa-question::before { content: "❓"; }
.fa-warning::before { content: "⚠️"; }
.fa-success::before { content: "✅"; }
.fa-error::before { content: "❌"; }

/* Alternative CSS-only icons using geometric shapes */
.fa-home.css-icon::before { content: "⌂"; font-family: serif; }
.fa-user.css-icon::before { content: "☺"; font-family: serif; }
.fa-heart.css-icon::before { content: "♥"; font-family: serif; color: #e74c3c; }
.fa-star.css-icon::before { content: "★"; font-family: serif; color: #f39c12; }
.fa-envelope.css-icon::before { content: "✉"; font-family: serif; }
.fa-phone.css-icon::before { content: "☎"; font-family: serif; }
.fa-check-circle.css-icon::before { content: "✓"; font-family: serif; color: #27ae60; background: currentColor; border-radius: 50%; }
.fa-times.css-icon::before { content: "×"; font-family: serif; color: #e74c3c; }
.fa-plus.css-icon::before { content: "+"; font-family: serif; }
.fa-minus.css-icon::before { content: "−"; font-family: serif; }
.fa-arrow-right.css-icon::before { content: "→"; font-family: serif; }

/* Custom styled icons using CSS shapes */
.fa-shopping-cart.shape-icon::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M7 4V2C7 1.45 6.55 1 6 1H4C3.45 1 3 1.45 3 2V4H1C0.45 4 0 4.45 0 5S0.45 6 1 6H3V18C3 19.1 3.9 20 5 20H19C20.1 20 21 19.1 21 18V8C21 6.9 20.1 6 19 6H5V4H7M5 8H19V18H5V8M7 10V16H9V10H7M11 10V16H13V10H11M15 10V16H17V10H15Z'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}

.fa-graduation-cap.shape-icon::before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M12,3L1,9L12,15L21,10.09V17H23V9M5,13.18V17.18L12,21L19,17.18V13.18L12,17L5,13.18Z'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
}

/* Fallback for browsers that don't support emoji */
@supports not (content: "🏠") {
  .fa-home::before { content: "H"; font-weight: bold; }
  .fa-user::before { content: "U"; font-weight: bold; }
  .fa-heart::before { content: "♥"; color: #e74c3c; }
  .fa-star::before { content: "★"; color: #f39c12; }
  .fa-search::before { content: "Q"; font-weight: bold; }
  .fa-envelope::before { content: "@"; font-weight: bold; }
  .fa-phone::before { content: "☎"; }
  .fa-map-marker-alt::before { content: "📍"; }
  .fa-shopping-cart::before { content: "🛒"; }
  .fa-graduation-cap::before { content: "🎓"; }
  .fa-book::before { content: "B"; font-weight: bold; }
  .fa-pencil-alt::before { content: "✏"; }
  .fa-clock::before { content: "⏰"; }
  .fa-exclamation-triangle::before { content: "⚠"; color: #f39c12; }
  .fa-money-bill::before { content: "$"; font-weight: bold; color: #27ae60; }
  .fa-lightbulb::before { content: "💡"; }
  .fa-check-circle::before { content: "✓"; color: #27ae60; }
  .fa-list-alt::before { content: "≡"; font-weight: bold; }
  .fa-truck::before { content: "🚛"; }
  .fa-ban::before { content: "⊘"; color: #e74c3c; }
  .fa-eye::before { content: "👁"; }
  .fa-users::before { content: "👥"; }
  .fa-piggy-bank::before { content: "$"; background: #f39c12; border-radius: 50%; }
  .fa-mouse-pointer::before { content: "➤"; }
  .fa-users-cog::before { content: "👥⚙"; }
  .fa-calendar-alt::before { content: "📅"; }
  .fa-school::before { content: "🏫"; }
  .fa-info-circle::before { content: "i"; font-weight: bold; color: #3498db; }
  .fa-shield-alt::before { content: "🛡"; }
  .fa-rocket::before { content: "🚀"; }
  .fa-play::before { content: "▶"; color: #27ae60; }
  .fa-arrow-right::before { content: "→"; font-weight: bold; }
  .fa-check-double::before { content: "✓✓"; color: #27ae60; }
}

/* Social Media Icons with Colors */
.fa-facebook::before { color: #1877f2; }
.fa-instagram::before { color: #e4405f; }
.fa-whatsapp::before { color: #25d366; }

/* Status Icons with Colors */
.fa-check-circle::before { color: #27ae60; }
.fa-exclamation-triangle::before { color: #f39c12; }
.fa-times::before { color: #e74c3c; }
.fa-info-circle::before { color: #3498db; }/*!
 * Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:1px solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left;margin-right:.3em}.fa-pull-right{float:right;margin-left:.3em}.fa-beat{animation:fa-beat 1s ease-in-out infinite}.fa-bounce{animation:fa-bounce 1s infinite}.fa-fade{animation:fa-fade 2s linear infinite}.fa-beat-fade{animation:fa-beat-fade 2s ease-in-out infinite}.fa-flip{animation:fa-flip 2s infinite}.fa-shake{animation:fa-shake 2s infinite}.fa-spin{animation:fa-spin 2s linear infinite}.fa-spin-reverse{animation:fa-spin 2s linear infinite reverse}.fa-pulse{animation:fa-spin 1s steps(8) infinite}.fa-spin-pulse{animation:fa-spin 1s linear infinite,fa-pulse 1s steps(8) infinite}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(1.25)}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(1.1,0.9) translateY(0)}30%{transform:scale(0.9,1.1) translateY(-100px)}50%{transform:scale(1.05,0.95) translateY(0)}57%{transform:scale(1) translateY(-7px)}64%{transform:scale(1) translateY(0)}100%{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:.4}}@keyframes fa-beat-fade{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.125)}}@keyframes fa-flip{50%{transform:rotateY(180deg)}}@keyframes fa-shake{0%{transform:rotate(15deg)}25%{transform:rotate(-15deg)}50%{transform:rotate(15deg)}75%{transform:rotate(-15deg)}100%{transform:rotate(15deg)}}@keyframes fa-spin{0%{transform:rotate(0)}100%{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,none))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-sr-only,.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.fa-sr-only-focusable:active,.fa-sr-only-focusable:focus,.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}

/* Font Face Definitions */
@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url("../fonts/fa-solid-900.woff2") format("woff2")}
@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url("../fonts/fa-regular-400.woff2") format("woff2")}
@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url("../fonts/fa-brands-400.woff2") format("woff2")}

.fa,.fas,.far{font-family:"Font Awesome 6 Free"}.fa,.fas{font-weight:900}.far{font-weight:400}.fab{font-family:"Font Awesome 6 Brands"}

/* Icon Definitions */
.fa-home:before{content:"\f015"}.fa-user:before{content:"\f007"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-search:before{content:"\f002"}.fa-envelope:before{content:"\f0e0"}.fa-phone:before{content:"\f095"}.fa-map-marker:before,.fa-map-marker-alt:before{content:"\f3c5"}.fa-shopping-cart:before{content:"\f07a"}.fa-graduation-cap:before{content:"\f19d"}.fa-book:before{content:"\f02d"}.fa-pencil-alt:before{content:"\f303"}.fa-clock:before{content:"\f017"}.fa-exclamation-triangle:before{content:"\f071"}.fa-money-bill:before{content:"\f0d6"}.fa-lightbulb:before{content:"\f0eb"}.fa-check-circle:before{content:"\f058"}.fa-list-alt:before{content:"\f022"}.fa-truck:before{content:"\f0d1"}.fa-ban:before{content:"\f05e"}.fa-eye:before{content:"\f06e"}.fa-users:before{content:"\f0c0"}.fa-piggy-bank:before{content:"\f4d3"}.fa-mouse-pointer:before{content:"\f245"}.fa-users-cog:before{content:"\f509"}.fa-calendar-alt:before{content:"\f073"}.fa-school:before{content:"\f549"}.fa-info-circle:before{content:"\f05a"}.fa-shield-alt:before{content:"\f3ed"}.fa-rocket:before{content:"\f135"}.fa-play:before{content:"\f04b"}.fa-arrow-right:before{content:"\f061"}.fa-check-double:before{content:"\f560"}.fa-facebook:before{content:"\f09a"}.fa-instagram:before{content:"\f16d"}.fa-whatsapp:before{content:"\f232"}.fa-wifi:before{content:"\f1eb"}

/* Additional commonly used icons */
.fa-times:before,.fa-close:before{content:"\f00d"}.fa-bars:before{content:"\f0c9"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-download:before{content:"\f019"}.fa-upload:before{content:"\f093"}.fa-edit:before{content:"\f044"}.fa-trash:before{content:"\f1f8"}.fa-save:before{content:"\f0c7"}.fa-print:before{content:"\f02f"}.fa-share:before{content:"\f064"}.fa-external-link:before{content:"\f08e"}.fa-question:before{content:"\f128"}.fa-warning:before{content:"\f071"}.fa-success:before{content:"\f058"}.fa-error:before{content:"\f057"}