    body {
  font-family: 'Lato', sans-serif;
}

h1, h2, h3, h4, h5 {
  color: #11276d; /* Azul oscuro del menú */
  font-weight: 700;
}
    html, body {
      height: 100%;
      margin: 0;
      padding: 0;
      font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
      overflow-x: hidden;
    }
    body {
      display: flex;
      flex-direction: column;
      min-height: 100vh;
    }
    main {
      flex: 1;
    }
    .encabezado-decorativo {
      position: relative;
      padding: 20px 0 10px;
      background-color: #fff;
    }

    
    .encabezado-rosa {
    background: linear-gradient(90deg, #7b00b3, #d83264);
    color: white;
    font-weight: bold;
    font-size: 1.2rem;
    padding: 15px 30px;
    border-radius: 0 40px 40px 0;
    width: 85%;
    text-align: center;
    position: relative;
    z-index: 2;
}
.encabezado-blanco {
    background: white;
    color: white;
    font-weight: bold;
    font-size: 1.5rem;
    padding: 15px 30px;
    border-radius: 0 40px 40px 0;
    width: 85%;
    text-align: center;
    position: relative;
    z-index: 2;
}


     
    .circulos_encabezado,
    .burbujas-arriba,
    .burbuja-derecha,
    .mancha-fondo,
    .mancha-izquierda {
      position: absolute;
      z-index: 1;
      max-width: 100px;
      pointer-events: none;
    }
    .circulos_encabezado { top: 0; right: 0; }
    .burbujas-arriba { top: 1200px; left: 10px; }
    .mancha-fondo { bottom: -1100px; right: 0; }
    .burbuja-derecha { right: -30px; bottom: 20px; }
    .mancha-izquierda { bottom: 10px; }
    .footer-imagen {
      width: 100%;
      height: auto;
      max-height: 260px;
      object-fit: contain;
    }
    footer {
      margin-top: auto;
    }
    @media (max-width: 768px) {
      .encabezado-rosa {
        font-size: 1.2rem;
        padding: 12px 20px;
      }
      .circulos_encabezado,
      .burbujas-arriba,
      .burbuja-derecha,
      .mancha-fondo,
      .mancha-izquierda {
        max-width: 60px;
        opacity: 0.5;
      }
    }

 .navbar a.nav-link,
.navbar .dropdown-menu a.dropdown-item {
  color: white;
}

.navbar .dropdown-menu {
  background-color: #11276d;
}

.navbar .dropdown-item:hover {
  background-color: #0d1e4a;
  color: white;
}

.card:hover {
  transform: translateY(-5px);
  transition: 0.3s;
}
.card-img-top {
  object-fit: cover;
  height: 180px;
}
     .descripcion-acero {
      color: #000;
      text-align: justify;
      font-size: 0.95rem;
    }

    .section-title-bar {
      background-color: #212529;
      width: 100vw;
      margin-left: calc(-50vw + 50%);
      margin-bottom: 2rem;
    }

    .scroll-cards {
      display: flex;
      flex-wrap: nowrap;
      overflow-x: auto;
      gap: 1rem;
      padding-bottom: 1rem;
    }

    .scroll-cards .card {
      min-width: 250px;
      max-width: 250px;
      flex: 0 0 auto;
      border: none;
    }

    .card-img-top {
      border-radius: 0.5rem;
    }
    .responsive-table {
    overflow-x: auto;
    display: block;
    width: 100%;
  }
  .scroll-cards::-webkit-scrollbar {
    height: 8px;
  }
  .scroll-cards::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 4px;
  }
   .navbar-toggler-icon {
    filter: invert(1); /* blanco sobre fondo oscuro */
  }



  table {
    border-collapse: collapse;
     width: 70%;
  font-size: 0.7rem;
  }

 th, td {
  border: 1px solid #999;
  padding: 1px 3px;       /* Menos espacio interno */
  font-size: 1em;      /* Letra más pequeña */
  min-width: 20px;        /* Cuadros más angostos */
  line-height: 1.1;       /* Menor altura de celda */
}

  th {
    background-color: #f2f2f2;
  }

  .navbar .nav-link {
  font-size: 1.3rem; /* Ajusta el tamaño */
  font-weight: 300;  /* Opcional: más grueso */
}

/* Aumentar tamaño de los elementos del dropdown */
.navbar .dropdown-menu .dropdown-item {
  font-size: 1.1rem;
}


.tabla-contenedor {
    width: 100%;
    max-width: 1350px;
    overflow-x: auto;       /* Solo scroll horizontal */
    overflow-y: hidden !important; /* Forzar ocultar scroll vertical */
    border: 2px solid #ccc;
    border-radius: 8px;
    white-space: nowrap;
    box-sizing: border-box;
    display: block;
    scrollbar-gutter: stable both-edges; /* Estabiliza espacio del scrollbar horizontal */
}

.tabla-contenedor::-webkit-scrollbar:vertical {
    display: none; /* Oculta barra vertical en navegadores Webkit */
}

.tabla-contenedor table {
    margin: 0;
    border-spacing: 0;
    border-collapse: collapse;
}

.offcanvas .offcanvas-title {
    color: #ffffff !important; /* Blanco puro para mejor contraste */
    font-size: 1.2rem; /* Ajusta tamaño si lo deseas */
    font-weight: bold; /* Texto en negrita */
}