body {
    font-family: "Poppins", sans-serif;
    background-color: white;
    color: black;
  }
  
  .font-title-h1 {
    color: #009FBD;
    font-size: 2rem;
  }
  
  .logo img {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 120px; /* Ajusta el ancho a 200px */
    height: auto; /* Mantén la proporción del logo */
    max-width: 100%; /* Asegura que no exceda el tamaño del contenedor */
  }
  
  .btn:disabled {
    background-color: gray;
    color: white;
  }
  
  #successMessage {
    max-width: 500px;
    margin: 0 auto;
    border-radius: 8px;
  }
  
  #okButton {
    width: 100px;
  }




  #emailForm {
    display: flex;
    flex-direction: column; /* Organiza en columna */
    align-items: center; /* Centra horizontalmente */
    justify-content: flex-start; /* Alinea hacia arriba */
    margin: 0; /* Elimina márgenes externos */
    padding: 0; /* Elimina padding interno */
  }
  
  #email {
    width: 300px; /* Ajusta el ancho del cuadro de texto */
    max-width: 100%; /* Evita que el cuadro se desborde */
    margin-bottom: 10px; /* Espacio entre el cuadro y otros elementos */
    text-align: left; /* Alinea el texto dentro del cuadro */
  }

  #submitEmail {
    border: none; /* Elimina cualquier borde */
    outline: none; /* Elimina el contorno al hacer foco */
  }

  #submitSurvey {
    border: none; /* Elimina cualquier borde */
    outline: none; /* Elimina el contorno al hacer foco */
    margin-bottom: 10px;
  }

  #errorMessage {
    margin-top: 5px; /* Espacio pequeño entre el campo y el mensaje */
    font-size: 0.875rem; /* Tamaño de fuente reducido */
    color: red; /* Color del texto */
    text-align: center; /* Alineación del mensaje */
  }

  #mainFooter {
    background-color: #f8f9fa; /* Fondo gris claro */
    padding: 20px 0; /* Espaciado interno para dar altura al footer */
    text-align: center; /* Centra el texto horizontalmente */
    font-size: 0.9rem; /* Tamaño de texto más pequeño */
    color: #6c757d; /* Color gris oscuro para el texto */
    position: relative; /* Asegura que el footer no se superponga con otros elementos */
  }
  
  #mainFooter p {
    margin: 0; /* Elimina márgenes externos del texto */
  }

  .section h2 {
    font-size: 1.25rem; /* Tamaño de fuente más pequeño */
    color: black; /* Color negro */
    font-weight: bold; /* Negrita */
    margin-bottom: 10px; /* Espacio inferior entre el título y las preguntas */
  }
  
  .small-text {
    font-size: 0.8rem;
    color: #6c757d;
  }

  .question-text {
    font-weight: 500;
    margin-bottom: 0.5rem;
  }

  /* Botones de escala compartidos */
  .scale-btn {
    cursor: pointer;
  }

  .scale-btn input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    pointer-events: none;
  }

  .scale-circle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 2px solid #dee2e6;
    border-radius: 50%;
    font-weight: 600;
    font-size: 0.95rem;
    background: white;
    color: #495057;
    transition: all 0.15s ease;
    user-select: none;
  }

  .scale-btn:hover .scale-circle {
    border-color: #dc3545;
    color: #dc3545;
  }

  /* Color aplicado via JS con degradado rojo→amarillo→verde */

  /* NPS 1-10: grid de 10 columnas, hints en fila 2 */
  .nps-grid {
    display: grid;
    grid-template-columns: repeat(10, 42px);
    gap: 8px;
    margin-bottom: 4px;
    direction: ltr;
  }

  .nps-hint-start {
    grid-column: 1;
    grid-row: 2;
    font-size: 0.7rem;
    color: #6c757d;
    white-space: nowrap;
  }

  .nps-hint-end {
    grid-column: 10;
    grid-row: 2;
    font-size: 0.7rem;
    color: #6c757d;
    white-space: nowrap;
    text-align: right;
  }

  /* Mobile: 2 filas de 5 */
  @media (max-width: 576px) {
    .nps-grid {
      grid-template-columns: repeat(5, 42px);
    }

    .nps-hint-start {
      grid-row: 3;
    }

    .nps-hint-end {
      grid-column: 5;
      grid-row: 3;
    }
  }

  /* Escala 1-5: grid de 5 columnas, hints en fila 2 */
  .scale5-grid {
    display: grid;
    grid-template-columns: repeat(5, 42px);
    gap: 16px 16px;
    margin-bottom: 4px;
    direction: ltr;
  }

  .scale5-hint-start {
    grid-column: 1;
    grid-row: 2;
    font-size: 0.7rem;
    color: #6c757d;
    white-space: nowrap;
  }

  .scale5-hint-end {
    grid-column: 5;
    grid-row: 2;
    font-size: 0.7rem;
    color: #6c757d;
    white-space: nowrap;
    text-align: right;
  }
  