:root {
  /* Colores base */
  --colorPrimary: #003FA8;
  --colorSecondary: #f5c518;

  /* Derivados del primary */
  --colorPrimaryHover: #054ac2;   /* 10% más claro */
  --colorPrimaryActive: #023897;  /* 20% más oscuro */

  /* Derivados del secondary */
  --colorSecondaryHover: #d9ae14; /* un poco más oscuro */
  --colorSecondaryActive: #b38e10;

  /* Color de texto */
  --btnTextLight: #ffffff;
  --btnTextDark: #0d0d0d;
}

.bd-primary-data {
    display:inline-block;
    padding:12px 25px;
    background:#eef4ff;
    border-radius:50px;
    border:1px solid #b8ccf5;
    font-size:22px;
    font-weight:700;
    color:#003FA8;
}

.color-primary {
  color: var(--colorPrimary) !important;
}

.color-secondary {
  color: var(--colorSecondary) !important;
}

.bg-primary-color {
  background-color: var(--colorPrimary);
}

.bg-secondary-color {
  background-color: var(--colorSecondary);
}

.bg-primary-linear-gradient {
  background: linear-gradient(135deg, #003FA8, #01348d);
}

/* boton custom  */
.btn-primary-custom {
  display: inline-block;
  font-weight: 600;
  padding: 0.55rem 1.2rem;
  font-size: 0.975rem;
  border-radius: 0.375rem;
  border: none;
  cursor: pointer;
  color: var(--btnTextLight);
  background-color: var(--colorPrimary);
  transition: all 0.25s ease;
}

.btn-primary-custom:hover {
  background-color: var(--colorPrimaryHover);
  color: #ffffff;
}

.btn-primary-custom:active {
  background-color: var(--colorPrimaryActive);
  transform: scale(0.98);
}

.btn-primary-custom:focus {
  outline: 3px solid rgba(16, 62, 39, 0.35);
  outline-offset: 2px;
}
.btn-primary-custom:disabled,
.btn-primary-custom.disabled {
  background-color: var(--colorPrimary);
  color: var(--btnTextLight);
  opacity: 0.65;
  cursor: not-allowed;
  pointer-events: none;
  transform: none;
}

/* outline  */
.btn-outline-primary-custom {
  display: inline-block;
  font-weight: 600;
  padding: 0.55rem 1.2rem;
  font-size: 0.975rem;
  border-radius: 0.375rem;
  border: 1px solid var(--colorPrimary);
  cursor: pointer;
  color: var(--colorPrimary);
  background-color: transparent;
  transition: all 0.25s ease;
}

.btn-outline-primary-custom:hover {
  color: var(--btnTextLight);
  background-color: var(--colorPrimary);
}

.btn-outline-primary-custom:active {
  color: var(--btnTextLight);
  background-color: var(--colorPrimaryActive);
  border-color: var(--colorPrimaryActive);
  transform: scale(0.98);
}
/* outline 2  */
.btn-outline-primary-custom2 {
  display: inline-block;
  font-weight: 400;
  padding: 0.30rem 0.75rem;
  font-size: 0.875rem;
  border-radius: 0.25rem;
  border: 1px solid var(--colorPrimary);
  cursor: pointer;
  color: var(--colorPrimary);
  background-color: transparent;
  transition: all 0.25s ease;
}

.btn-outline-primary-custom2:hover {
  color: var(--btnTextLight);
  background-color: var(--colorPrimary);
}

.btn-outline-primary-custom2:active {
  color: var(--btnTextLight);
  background-color: var(--colorPrimaryActive);
  border-color: var(--colorPrimaryActive);
  transform: scale(0.98);
}

/* noton secondary custom  */
.btn-secondary-custom {
  display: inline-block;
  font-weight: 600;
  padding: 0.55rem 1.2rem;
  font-size: 0.975rem;
  border-radius: 0.375rem;
  border: none;
  cursor: pointer;
  color: var(--btnTextDark);
  background-color: var(--colorSecondary);
  transition: all 0.25s ease;
}

.btn-secondary-custom:hover {
  background-color: var(--colorSecondaryHover);
}

.btn-secondary-custom:active {
  background-color: var(--colorSecondaryActive);
  transform: scale(0.98);
}

.btn-secondary-custom:focus {
  outline: 3px solid rgba(245, 197, 24, 0.4);
  outline-offset: 2px;
}

.navbar-brand2 {
  padding-top: var(--bs-navbar-brand-padding-y);
  padding-bottom: var(--bs-navbar-brand-padding-y);
  margin-left: var(--bs-navbar-brand-margin-end);
  font-size: var(--bs-navbar-brand-font-size);
  color: var(--bs-navbar-brand-color);
  white-space: nowrap;
}
.navbar-brand2:hover, .navbar-brand2:focus {
  color: var(--bs-navbar-brand-hover-color);
}