<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">
/* ======================
   VARIABLES GLOBALES
   ====================== */
   :root {
    --blue-dark: #273f85;
    --red: #f03535;
    --yellow: #ffff00;
    --blue-light: #a8eefe;
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.12);
    --shadow-md: 0 4px 6px rgba(0,0,0,0.16);
    --shadow-lg: 0 10px 20px rgba(0,0,0,0.19);
    --transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  }

/* ======================
   ESTILOS GENERALES
   ====================== */
   body {
    font-family: 'Arial', sans-serif;
    color: #333;
    overflow-x: hidden;
    line-height: 1.6;
  }

/* ======================
   HEADER Y NAVEGACIÃ“N
   ====================== */

/* Navbar - Estado inicial (transparente) */
.navbar {
  background: transparent !important; /* Fuerza transparencia */
  transition: all 0.3s ease-in-out !important;
  padding: 5px 0 !important;
}

/* Navbar - Estado scrolled (azul sÃ³lido) */
.navbar.scrolled,
.navbar.fixed-top.scrolled,  /* Para asegurar en todas las pÃ¡ginas */
.bg-dark.scrolled {          /* Por si Bootstrap intenta sobrescribir */
  background: var(--blue-dark) !important;
  padding: 5px 0 !important;
  box-shadow: var(--shadow-sm) !important;
}





  .navbar-brand img {
    transition: var(--transition);
    /*height: 50px;*/
  }

  .navbar.scrolled .navbar-brand img {
    /*height: 40px;*/
  }

  .nav-link {
    font-weight: 500;
    padding: 8px 15px !important;
    border-radius: 4px;
    transition: var(--transition);
    color: white !important;
  }

  .nav-link:hover {
    background: rgba(255, 255, 255, 0.1);
    transform: translateY(-2px);
  }

/* ======================
   SECCIÃ“N HERO
   ====================== */
   .hero-section {
    background: linear-gradient(135deg, var(--blue-dark) 0%, var(--blue-light) 100%);
    color: white;
    padding: 140px 0 80px;
    position: relative;
    overflow: hidden;
  }

  .hero-content {
    position: relative;
    z-index: 2;
  }

  .hero-image {
    width: 100%;
    height: auto;
    max-height: 400px;
    object-fit: cover;
    border-radius: 12px;
    box-shadow: var(--shadow-lg);
    transition: var(--transition);
    transform: translateZ(0);
    animation: float 6s ease-in-out infinite;
  }

  .hero-image:hover {
    transform: scale(1.02) translateZ(0);
  }

  @keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-15px); }
    100% { transform: translateY(0px); }
  }

  .text-yellow {
    color: var(--yellow) !important;
    text-shadow: 0 2px 4px rgba(0,0,0,0.2);
  }

  .btn-accesible {
    font-size: 1.2rem;
    padding: 12px 24px;
    background-color: var(--blue-dark);
    color: white;
    border: none;
    border-radius: 8px;
    transition: var(--transition);
    box-shadow: var(--shadow-sm);
    font-weight: 600;
    position: relative;
    overflow: hidden;
  }

  .btn-accesible:hover {
    background-color: var(--red);
    transform: translateY(-3px) scale(1.05);
    box-shadow: var(--shadow-md);
  }

  .btn-accesible:after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: var(--transition);
  }

  .btn-accesible:hover:after {
    left: 100%;
  }

/* ======================
   SECCIÃ“N DESCRIPCIÃ“N
   ====================== */
   .descripcion-section {
    padding: 80px 0;
    background: white;
    position: relative;
  }

  .descripcion-section p {
    font-size: 1.2rem;
    color: var(--blue-dark);
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 2;
  }

/* ======================
   SECCIÃ“N COMITÃ‰ TÃ‰CNICO
   ====================== */
   #comite-tecnico {
    background-color: #f8f9fa;
    padding: 100px 0;
  }

  #comite-tecnico .card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border-radius: 10px;
    margin: 0 10px;
  }

  #comite-tecnico .card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.1) !important;
  }

  #comite-tecnico .card-img-top {
    border-radius: 10px 10px 0 0;
    height: 250px;
    object-fit: cover;
    cursor: pointer;
  }

  .carousel-control-prev, 
  .carousel-control-next {
    width: 5%;
    opacity: 1;
  }

  .carousel-control-prev-icon, 
  .carousel-control-next-icon {
    background-color: rgba(0,0,0,0.3);
    border-radius: 50%;
    padding: 15px;
    background-size: 60%;
  }

/* ======================
   MODAL BIOGRAFÃAS
   ====================== */
   .bio-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.95);
    z-index: 1100;
    align-items: center;
    justify-content: center;
    animation: fadeIn 0.3s;
  }

  .bio-modal-content {
    background: white;
    width: 90%;
    max-width: 800px;
    border-radius: 12px;
    overflow: hidden;
    position: relative;
    animation: slideUp 0.4s;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
  }

  .bio-modal-img {
    width: 100%;
    height: 300px;
    object-fit: cover;
  }

  .bio-modal-text {
    padding: 30px;
  }

  .bio-modal-text h3 {
    color: var(--blue-dark);
    margin-bottom: 5px;
    font-weight: 700;
    font-size: 1.8rem;
  }

  .bio-modal-text .title {
    color: var(--red);
    font-weight: 600;
    margin-bottom: 20px;
    display: block;
    font-size: 1.1rem;
  }

  .bio-modal-text p {
    line-height: 1.8;
    color: #555;
  }

  .close-modal {
    position: absolute;
    top: 20px;
    right: 20px;
    color: white;
    background: var(--red);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 2;
    border: none;
    font-size: 1.5rem;
    transition: var(--transition);
  }

  .close-modal:hover {
    transform: rotate(90deg);
    background: #d63030;
  }

  @keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
  }

  @keyframes slideUp {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
  }

/* ======================
   SECCIÃ“N FAQ
   ====================== */
   .faq-section {
    padding: 80px 0;
    /*background: linear-gradient(135deg, var(--blue-dark) 0%, #1a2f6b 100%);*/
    color: white;
    position: relative;
  }

  .faq-container {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 20px;
  }

  .faq-header {
    text-align: center;
    margin-bottom: 50px;
  }

  .faq-header h2 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 15px;
    color: white;
    position: relative;
    display: inline-block;
  }

  .faq-header p {
    font-size: 1.2rem;
    opacity: 0.9;
    max-width: 700px;
    margin: 0 auto;
  }

  .accordion {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
  }

  .accordion-item {
    border-bottom: 1px solid #ddd;
  }

  .accordion-item:last-child {
    border-bottom: none;
  }

  .accordion-button {
    width: 100%;
    padding: 25px;
    text-align: left;
    background: #f8f9fa;
    border: none;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--blue-dark);
    cursor: pointer;
    display: flex;
    align-items: center;
    transition: var(--transition);
    position: relative;
  }

  .accordion-button:not(.collapsed) {
    background: white;
    color: var(--blue-dark);
    box-shadow: none;
  }

  .accordion-button:hover {
    background: #e9ecef;
  }

  .accordion-icon {
    margin-right: 15px;
    color: var(--blue-dark);
    font-size: 1.2rem;
    min-width: 24px;
    text-align: center;
  }

  .accordion-body {
    padding: 25px;
    background: white;
    font-size: 1rem;
    line-height: 1.8;
    color: #555;
  }

  .accordion-body ul {
    padding-left: 20px;
  }

  .accordion-body li {
    margin-bottom: 10px;
  }

/* ======================
   SECCIÃ“N CTA
   ====================== */
   .cta-section {
    padding: 100px 0;
    padding-top: 10px;
    /*background: linear-gradient(135deg, var(--blue-dark) 0%, #1a2f6b 100%);*/
    color: white;
    position: relative;
    overflow: hidden;
  }

  .cta-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    text-align: center;
    position: relative;
    z-index: 2;
  }

  .cta-badge {
    display: inline-flex;
    width: 100px;
    height: 100px;
    background: rgba(255,255,255,0.15);
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    border: 2px solid rgba(255, 255, 0, 0.3);
    animation: pulse 2s infinite;
  }

  .cta-badge i {
    font-size: 2.5rem;
    color: var(--yellow);
    text-shadow: 0 0 10px rgba(255, 255, 0, 0.5);
  }

  @keyframes pulse {
    0% {
      transform: scale(1);
      box-shadow: 0 0 0 0 rgba(255, 255, 0, 0.4);
    }
    50% {
      transform: scale(1.1);
      box-shadow: 0 0 0 10px rgba(255, 255, 0, 0);
    }
    100% {
      transform: scale(1);
      box-shadow: 0 0 0 0 rgba(255, 255, 0, 0);
    }
  }

  .cta-title {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: white;
  }

  .cta-title span {
    color: var(--yellow);
    position: relative;
  }

  .cta-description {
    font-size: 1.2rem;
    max-width: 700px;
    margin: 0 auto 40px;
    opacity: 0.9;
    line-height: 1.6;
  }

  .cta-buttons {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px;
  }

  .cta-button {
    display: inline-block;
    background: white;
    color: var(--blue-dark);
    padding: 15px 40px;
    border-radius: 50px;
    font-size: 1.2rem;
    font-weight: 600;
    text-decoration: none;
    transition: var(--transition);
    box-shadow: var(--shadow-md);
    border: 2px solid white;
  }

  .cta-button:hover {
    background: transparent;
    color: white;
    transform: translateY(-5px);
    box-shadow: var(--shadow-lg);
  }

  .cta-button-secondary {
    background: transparent;
    color: white;
    border: 2px solid rgba(255,255,255,0.5);
  }

  .cta-button-secondary:hover {
    background: rgba(255,255,255,0.1);
    border-color: white;
  }

  .wave-divider {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
  }

  .wave-divider svg {
    position: relative;
    display: block;
    width: calc(100% + 1.3px);
    height: 60px;
  }

  .wave-divider .shape-fill {
    fill: #FFFFFF;
  }

/* ======================
   SECCIÃ“N GALERÃA
/* Estilos para galerÃ­a 3x3 estricta */
.galeria-grid-3x3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* Siempre 3 columnas */
  grid-template-rows: repeat(3, 1fr); /* Siempre 3 filas */
  gap: 8px; /* Espacio entre items */
  width: 100%;
}

.galeria-item {
  aspect-ratio: 1/1; /* RelaciÃ³n cuadrada obligatoria */
  overflow: hidden;
  position: relative;
}

.galeria-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.galeria-item:hover img {
  transform: scale(1.05);
}

/* Efecto overlay al pasar el mouse */
.galeria-item::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.3);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.galeria-item:hover::after {
  opacity: 1;
}

/* Garantizar que siempre sea cuadrada en TODAS las pantallas */
@media (max-width: 575.98px) {
  .galeria-grid-3x3 {
    gap: 4px; /* Espacio mÃ¡s ajustado en mÃ³viles muy pequeÃ±os */
  }
}
/* ======================
   MODAL GALERÃA
   ====================== */
   .galeria-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.95);
    z-index: 1100;
    align-items: center;
    justify-content: center;
    animation: fadeIn 0.3s;
  }

  .modal-contenido {
    position: relative;
    width: 90%;
    max-width: 900px;
    animation: slideUp 0.4s;
  }

  #modal-imagen {
    width: 100%;
    max-height: 75vh;
    object-fit: contain;
    border-radius: 8px;
    box-shadow: 0 5px 30px rgba(0,0,0,0.3);
  }

  .modal-info {
    color: white;
    text-align: center;
    padding: 20px 0;
    font-size: 1.1rem;
  }

  .nav-modal {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255,255,255,0.3);
    color: white;
    border: none;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    font-size: 1.5rem;
    cursor: pointer;
    transition: var(--transition);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
  }

  .nav-modal:hover {
    background: rgba(255,255,255,0.5);
    transform: translateY(-50%) scale(1.1);
  }

  .nav-modal.prev {
    left: -80px;
  }

  .nav-modal.next {
    right: -80px;
  }

  .cerrar-modal {
    position: absolute;
    top: 40px;
    right: 40px;
    color: white;
    font-size: 40px;
    cursor: pointer;
    z-index: 2;
    transition: var(--transition);
    opacity: 0.8;
    background: none;
    border: none;
  }

  .cerrar-modal:hover {
    opacity: 1;
    transform: rotate(90deg);
  }

/* ======================
   FOOTER
   ====================== */
  /* Estilos para el footer mejorado */
.footer-premium {
  background: var(--blue-dark);
  color: white;
  position: relative;
  overflow: hidden;
  font-family: 'Arial', sans-serif;
}

.footer-title {
  color: var(--yellow);
  font-size: 1.2rem;
  margin-bottom: 1.5rem;
  position: relative;
  padding-bottom: 10px;
}

.footer-title:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 50px;
  height: 3px;
  background: var(--red);
}

.footer-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-list li {
  margin-bottom: 15px;
  display: flex;
  align-items: flex-start;
  line-height: 1.6;
}

.footer-list i {
  color: var(--yellow);
  margin-right: 10px;
  margin-top: 3px;
}

.footer-list a {
  color: rgba(255,255,255,0.9);
  text-decoration: none;
  transition: all 0.3s ease;
}

.footer-list a:hover {
  color: white;
  text-decoration: underline;
}

.footer-social {
  display: flex;
  justify-content: center;
  gap: 12px;
}

.social-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255,255,255,0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  color: white;
  transition: all 0.3s ease;
}

.social-icon:hover {
  background: var(--yellow);
  color: var(--blue-dark);
  transform: translateY(-3px);
}

.footer-bottom {
  background: rgba(0,0,0,0.25);
  border-top: 1px solid rgba(255,255,255,0.1);
}

.footer-links {
  margin: 0;
}

.footer-links a {
  color: rgba(255,255,255,0.7);
  text-decoration: none;
  transition: all 0.3s ease;
  font-size: 0.9rem;
}

.footer-links a:hover {
  color: white;
}

.footer-copyright {
  font-size: 0.9rem;
  opacity: 0.8;
  color: rgba(255,255,255,0.7);
}

.footer-copyright span {
  color: var(--yellow);
}

/* Responsive */
@media (max-width: 767.98px) {
  .footer-title {
    margin-top: 1.5rem;
  }
  
  .footer-social {
    justify-content: flex-start;
  }
}

/* ======================
   BOTÃ“N WHATSAPP
   ====================== */
   .whatsapp-btn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    box-shadow: 0 5px 20px rgba(18, 140, 126, 0.3);
    z-index: 1000;
    transition: all 0.3s;
    text-decoration: none;
  }

  .whatsapp-btn:hover {
    transform: scale(1.1) translateY(-5px);
    color: white;
    box-shadow: 0 8px 25px rgba(18, 140, 126, 0.4);
  }

  .whatsapp-text {
    position: absolute;
    right: 70px;
    white-space: nowrap;
    background: white;
    color: #075E54;
    padding: 8px 15px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 600;
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    opacity: 0;
    transition: all 0.3s;
  }

  .whatsapp-btn:hover .whatsapp-text {
    opacity: 1;
    right: 80px;
  }

/* ======================
   MEDIA QUERIES
   ====================== */
   @media (max-width: 991.98px) {
    .navbar {
      background: var(--blue-dark) !important;
      padding: 10px 0 !important;
    }

    .nav-modal {
      width: 50px;
      height: 50px;
      font-size: 1.2rem;
    }

    .nav-modal.prev {
      left: -60px;
    }

    .nav-modal.next {
      right: -60px;
    }

    .bio-modal-content {
      flex-direction: column;
      max-height: 90vh;
    }

    .bio-modal-img {
      width: 100%;
      height: 250px;
    }

    .bio-modal-text {
      width: 100%;
      overflow-y: auto;
    }
  }

  @media (max-width: 767.98px) {
    .hero-section {
      padding: 100px 0 40px;
      text-align: center;
    }

    .hero-image {
      max-height: 300px;
      margin-top: 30px;
    }

    .hero-section h1 {
      font-size: 2.2rem;
    }

    .hero-section .lead {
      font-size: 1.1rem;
    }

    .cerrar-modal {
      top: 20px;
      right: 20px;
      font-size: 30px;
    }

    .cta-buttons {
      flex-direction: column;
      align-items: center;
    }

    .cta-button {
      width: 100%;
      max-width: 300px;
    }
  }

  @media (max-width: 575.98px) {
    .nav-modal {
      width: 40px;
      height: 40px;
      font-size: 1rem;
    }

    .nav-modal.prev {
      left: -50px;
    }

    .nav-modal.next {
      right: -50px;
    }

    .section-title {
      font-size: 2rem;
    }

    .faq-header h2 {
      font-size: 2rem;
    }

    .accordion-button {
      padding: 20px 15px;
      font-size: 1rem;
    }

    .footer-wave-top {
      height: 60px;
    }
  }

  /* Estilos para el carrusel simplificado */
  .team-carousel-wrapper {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px;
    overflow: hidden;
  }

  .team-carousel {
    display: flex;
    transition: transform 0.5s ease;
    will-change: transform;
    padding: 10px 0;
  }

  .team-member {
    flex: 0 0 calc(25% - 24px);
    margin: 0 12px;
    cursor: pointer;
    transition: transform 0.3s ease;
  }

  .team-member:hover {
    transform: translateY(-5px);
  }

  .member-card {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12);
    height: 100%;
  }

  .member-photo {
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    position: relative;
    overflow: hidden;
  }

  .member-photo img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.8s;
  }

  .member-info {
    padding: 20px;
    text-align: center;
  }

  .carousel-nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: white;
    color: #273f85;
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12);
    font-size: 1.2rem;
    z-index: 10;
  }

  .carousel-nav-btn:hover {
    background: #f03535;
    color: white;
    transform: translateY(-50%) scale(1.1);
  }

  .carousel-nav-btn.prev {
    left: 0;
  }

  .carousel-nav-btn.next {
    right: 0;
  }

  /* Responsive */
  @media (max-width: 1199.98px) {
    .team-member {
      flex: 0 0 calc(33.333% - 24px);
    }
  }

  @media (max-width: 991.98px) {
    .team-member {
      flex: 0 0 calc(50% - 24px);
    }
  }

  @media (max-width: 767.98px) {
    .team-member {
      flex: 0 0 calc(100% - 24px);
    }

    .team-carousel-wrapper {
      padding: 0 30px;
    }

    .carousel-nav-btn {
      width: 40px;
      height: 40px;
      font-size: 1rem;
    }
  }

  /* Estilos para la secciÃ³n de presentaciÃ³n */
.bg-light-blue {
  background-color: #f0f7ff;
}

.text-dark-blue {
  color: #273f85;
}

.bg-yellow {
  background-color: #ffff00;
}

.siltur-presentation {
  position: relative;
  overflow: hidden;
}

.feature-icon {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
}

.siltur-features .feature-item {
  transition: transform 0.3s ease;
}

.siltur-features .feature-item:hover {
  transform: translateX(5px);
}



        /* Estilos exclusivos para contacto */
        .contact-hero {
           /* background: linear-gradient(135deg, var(--blue-dark) 0%, var(--blue-light) 100%);*/
            background:  var(--blue-dark) !important;
            color: white;
            padding: 80px 0 60px;
            text-align: center;
            position: relative;
            overflow: hidden;
        }
        
        .contact-hero h1 {
            font-size: 2.8rem;
            font-weight: 700;
            margin-bottom: 15px;
            animation: fadeInDown 0.8s ease;
        }
        
        .contact-hero .lead {
            font-size: 1.3rem;
            max-width: 700px;
            margin: 0 auto;
            opacity: 0.9;
            animation: fadeIn 1s ease 0.3s forwards;
            opacity: 0;
        }
        
        .contact-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 30px;
            max-width: 1200px;
            margin: 60px auto;
            padding: 0 20px;
        }
        
        .contact-card {
            background: white;
            border-radius: 12px;
            padding: 40px 30px;
            text-align: center;
            box-shadow: 0 5px 15px rgba(0,0,0,0.08);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        
        .contact-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 10px 25px rgba(0,0,0,0.12);
        }
        
        .contact-icon {
            width: 80px;
            height: 80px;
            margin: 0 auto 25px;
            background: var(--blue-light);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--blue-dark);
            font-size: 2rem;
        }
        
        .contact-card h3 {
            color: var(--blue-dark);
            margin-bottom: 20px;
            font-weight: 600;
        }
        
        .contact-info {
            color: #555;
            line-height: 1.8;
        }
        
        .contact-info a {
            color: var(--blue-dark);
            font-weight: 500;
            text-decoration: none;
            transition: color 0.3s ease;

        }
        
        .contact-info a:hover {
            color: var(--red);
            text-decoration: underline;
           
        }
        
        .email-btn {
            display: inline-block;
            margin-top: 20px;
            background: var(--blue-dark);
            color: white;
            padding: 12px 30px;
            border-radius: 50px;
            font-weight: 600;
            text-decoration: none;
            transition: all 0.3s ease;
            border: 2px solid var(--blue-dark);
        }
        
        .email-btn:hover {
            background: transparent;
            color: var(--blue-dark);
            transform: translateY(-3px);
        }
        
        @media (max-width: 767.98px) {
            .contact-hero h1 {
                font-size: 2.2rem;
            }
            
            .contact-hero .lead {
                font-size: 1.1rem;
            }
            
            .contact-grid {
                grid-template-columns: 1fr;
                gap: 20px;
            }
        }
        
        /* Animaciones */
        @keyframes fadeInDown {
            from {
                opacity: 0;
                transform: translateY(-20px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        
        @keyframes fadeIn {
            to {
                opacity: 1;
            }
        }

   /* Estilos exclusivos para requisitos.php */
        .requirements-hero {
            /*background: linear-gradient(135deg, var(--blue-dark) 0%, var(--blue-light) 100%);*/
            background:  var(--blue-dark) !important;
            color: white;
            padding: 100px 0 70px;
            text-align: center;
            position: relative;
            overflow: hidden;
        }
        
        .requirements-hero h1 {
            font-size: 2.8rem;
            font-weight: 700;
            margin-bottom: 15px;
            animation: fadeInDown 0.8s ease;
        }
        
        .requirements-hero .lead {
            font-size: 1.3rem;
            max-width: 800px;
            margin: 0 auto;
            opacity: 0.9;
            animation: fadeIn 1s ease 0.3s forwards;
            opacity: 0;
        }
        
        .requirements-container {
            display: grid;
            grid-template-columns: 3fr 1fr;
            gap: 40px;
            max-width: 1200px;
            margin: 60px auto;
            padding: 0 20px;
        }
        
        /* Estilos para el acordeÃ³n de requisitos */
        .requirements-accordion .accordion-item {
            border: none;
            border-radius: 8px;
            overflow: hidden;
            margin-bottom: 20px;
            box-shadow: 0 3px 10px rgba(0,0,0,0.08);
        }
        
        .requirements-accordion .accordion-header {
            background: var(--blue-dark);
        }
        
        .requirements-accordion .accordion-button {
            color: white;
            font-weight: 600;
            padding: 20px 25px;
            background-color: var(--blue-dark);
        }
        
        .requirements-accordion .accordion-button:not(.collapsed) {
            background-color: var(--blue-dark);
            color: white;
        }
        
        .requirements-accordion .accordion-button:focus {
            box-shadow: none;
        }
        
        .requirements-accordion .accordion-body {
            padding: 25px;
            background: #f9f9f9;
        }
        
        .requirements-accordion .requirement-list {
            list-style-type: none;
            padding-left: 0;
        }
        
        .requirements-accordion .requirement-list li {
            padding: 8px 0;
            border-bottom: 1px solid #eee;
            display: flex;
            align-items: flex-start;
        }
        
        .requirements-accordion .requirement-list li:before {
            content: "â€¢";
            color: var(--yellow);
            font-weight: bold;
            display: inline-block;
            width: 1em;
            margin-right: 10px;
        }
        
        /* Estilos para la secciÃ³n de aliados */
        .allies-section {
            background: white;
            border-radius: 12px;
            padding: 25px;
            box-shadow: 0 5px 15px rgba(0,0,0,0.05);
            height: fit-content;
            position: sticky;
            top: 20px;
        }
        
        .allies-section h3 {
            color: var(--blue-dark);
            text-align: center;
            margin-bottom: 25px;
            padding-bottom: 15px;
            border-bottom: 3px solid var(--yellow);
            font-weight: 700;
        }
        
        .allies-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 20px;
        }
        
        .ally-item {
            background: white;
            border-radius: 8px;
            padding: 15px;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 3px 10px rgba(0,0,0,0.05);
            transition: all 0.3s ease;
            aspect-ratio: 1/1;
        }
        
        .ally-item:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 20px rgba(0,0,0,0.1);
        }
        
        .ally-item img {
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
            filter: grayscale(100%);
            opacity: 0.8;
            transition: all 0.3s ease;
        }
        
        .ally-item:hover img {
            filter: grayscale(0);
            opacity: 1;
        }
        
        /* Responsive */
        @media (max-width: 991.98px) {
            .requirements-container {
                grid-template-columns: 1fr;
            }
            
            .allies-section {
                position: static;
                margin-top: 50px;
            }
            
            .allies-grid {
                grid-template-columns: repeat(4, 1fr);
            }
        }
        
        @media (max-width: 575.98px) {
            .requirements-hero h1 {
                font-size: 2.2rem;
            }
            
            .requirements-hero .lead {
                font-size: 1.1rem;
            }
            
            .allies-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }
        
        /* Animaciones */
        @keyframes fadeInDown {
            from {
                opacity: 0;
                transform: translateY(-20px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        
        @keyframes fadeIn {
            to {
                opacity: 1;
            }
        }


         /* Estilos exclusivos para capacitaciones.php */
        .trainings-hero {
            /*background: linear-gradient(135deg, var(--blue-dark) 0%, var(--yellow) 100%);*/
            background:  var(--blue-dark) !important;
            color: white;
            padding: 100px 0 70px;
            text-align: center;
            position: relative;
            overflow: hidden;
        }
        
        .trainings-hero h1 {
            font-size: 2.8rem;
            font-weight: 700;
            margin-bottom: 15px;
            text-shadow: 0 2px 4px rgba(0,0,0,0.2);
            animation: fadeInDown 0.8s ease;
        }
        
        .trainings-hero .lead {
            font-size: 1.3rem;
            max-width: 800px;
            margin: 0 auto;
            opacity: 0.9;
            animation: fadeIn 1s ease 0.3s forwards;
            opacity: 0;
        }
        
        .trainings-container {
            display: grid;
            grid-template-columns: 3fr 1fr;
            gap: 40px;
            max-width: 1200px;
            margin: 60px auto;
            padding: 0 20px;
        }
        
        /* Estilos para el acordeÃ³n de mÃ³dulos */
        .trainings-accordion .accordion-item {
            border: none;
            border-radius: 8px;
            overflow: hidden;
            margin-bottom: 20px;
            box-shadow: 0 3px 15px rgba(0,0,0,0.1);
        }
        
        .trainings-accordion .accordion-header {
            background: var(--blue-dark);
        }
        
        .trainings-accordion .accordion-button {
            color: white;
            font-weight: 600;
            padding: 20px 25px;
            background-color: var(--blue-dark);
            position: relative;
        }
        
        .trainings-accordion .accordion-button:not(.collapsed) {
            background-color: var(--blue-dark);
            color: white;
        }
        
        .trainings-accordion .accordion-button:after {
            background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffff00'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
        }
        
        .trainings-accordion .accordion-body {
            padding: 25px;
            background: #f9f9f9;
        }
        
        .module-content {
            /*display: grid; */
            grid-template-columns: 1fr 1fr;
            gap: 30px;
        }
        
        .module-info h4 {
            color: var(--blue-dark);
            margin-bottom: 15px;
            font-weight: 600;
        }
        
        .module-info ul {
            list-style-type: none;
            padding-left: 0;
        }
        
        .module-info li {
            padding: 8px 0;
            border-bottom: 1px solid #eee;
            display: flex;
            align-items: flex-start;
        }
        
        .module-info li:before {
            content: "â€¢";
            color: var(--yellow);
            font-weight: bold;
            display: inline-block;
            width: 1em;
            margin-right: 10px;
        }
        
        .module-image {
            border-radius: 8px;
            overflow: hidden;
            box-shadow: 0 5px 15px rgba(0,0,0,0.1);
        }
        
        .module-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s ease;
        }
        
        .module-image:hover img {
            transform: scale(1.05);
        }
        
        /* Estilos para la secciÃ³n de certificado */
        .certificate-section {
            background: white;
            border-radius: 12px;
            padding: 40px;
            margin-top: 50px;
            text-align: center;
            box-shadow: 0 5px 20px rgba(0,0,0,0.08);
            border: 2px dashed var(--yellow);
        }
        
        .certificate-section h3 {
            color: var(--blue-dark);
            margin-bottom: 20px;
            font-weight: 700;
        }
        
        .certificate-image {
            max-width: 300px;
            margin: 0 auto 25px;
            border: 5px solid white;
            box-shadow: 0 5px 15px rgba(0,0,0,0.1);
            transition: all 0.3s ease;
        }
        
        .certificate-image:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 25px rgba(0,0,0,0.15);
        }
        
      
        
        /* Responsive */
        @media (max-width: 991.98px) {
            .trainings-container {
                grid-template-columns: 1fr;
            }
            
            .module-content {
                grid-template-columns: 1fr;
            }
            
            .module-image {
                height: 250px;
                order: -1;
            }
        }
        
        @media (max-width: 575.98px) {
            .trainings-hero h1 {
                font-size: 2.2rem;
            }
            
            .trainings-hero .lead {
                font-size: 1.1rem;
            }
            
            .certificate-section {
                padding: 25px 15px;
            }
        }
        
        /* Animaciones */
        @keyframes fadeInDown {
            from {
                opacity: 0;
                transform: translateY(-20px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        
        @keyframes fadeIn {
            to {
                opacity: 1;
            }
        }

        </pre></body></html>