.menu-arriba-con-oposiciones,
.breadcrumb-con-oposiciones {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.menu-arriba-con-oposiciones .menu-arriba-ruta,
.breadcrumb-con-oposiciones ol {
  flex: 1 1 auto;
  min-width: 0;
}

.menu-arriba-con-oposiciones .menu-arriba-ruta {
  text-align: center;
}

.oposiciones-contextual {
  position: relative;
  isolation: isolate;
  flex: 0 0 auto;
  overflow: hidden;
  padding: .62rem 1rem;
  border: 1px solid rgba(255, 255, 255, .78);
  border-radius: 999px;
  color: #143c5b !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .88), rgba(220, 240, 255, .58));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .95),
    inset 0 -1px 0 rgba(107, 151, 184, .16),
    0 8px 22px rgba(18, 53, 79, .16);
  backdrop-filter: blur(14px) saturate(155%);
  -webkit-backdrop-filter: blur(14px) saturate(155%);
  font-size: .86rem;
  font-weight: 750 !important;
  line-height: 1.2;
  text-align: center;
  text-decoration: none !important;
  white-space: nowrap;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.oposiciones-contextual::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 1px 35% 48% 2px;
  border-radius: inherit;
  background: linear-gradient(115deg, rgba(255, 255, 255, .72), rgba(255, 255, 255, 0));
  pointer-events: none;
}

.oposiciones-contextual:hover {
  color: #0c304a !important;
  border-color: rgba(255, 255, 255, .96);
  box-shadow:
    inset 0 1px 0 #fff,
    inset 0 -1px 0 rgba(107, 151, 184, .2),
    0 10px 28px rgba(18, 53, 79, .22);
  transform: translateY(-1px);
}

.oposiciones-contextual:focus-visible {
  outline: 3px solid rgba(47, 130, 184, .48);
  outline-offset: 3px;
}

@media (max-width: 720px) {
  .menu-arriba-con-oposiciones,
  .breadcrumb-con-oposiciones {
    flex-wrap: wrap;
    justify-content: center;
  }

  .menu-arriba-con-oposiciones .menu-arriba-ruta,
  .breadcrumb-con-oposiciones ol {
    flex-basis: 100%;
    justify-content: center;
  }

  .oposiciones-contextual {
    padding: .56rem .86rem;
    font-size: .8rem;
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .oposiciones-contextual {
    transition: none;
  }
}
