/**
 * Acentos azul UNSTA — solo en páginas con body.ismp-tone (inicio, institucional, inscripciones).
 * No aplica con body.site-context-unsta.
 */

body.ismp-tone:not(.site-context-unsta) .carreras-offer-faq-line:not(.carreras-offer-faq-line--on-dark):not(.carreras-offer-faq-line--on-dark-bordo-bar) {
  border-bottom: 1px solid rgba(25, 77, 160, 0.26);
}

body.ismp-tone:not(.site-context-unsta) .carreras-offer-faq-line--on-dark,
body.ismp-tone:not(.site-context-unsta) .carreras-offer-faq-line--on-dark-bordo-bar {
  border-bottom: 1px solid rgba(180, 200, 235, 0.35);
}

body.ismp-tone:not(.site-context-unsta) footer.site-footer {
  box-shadow: inset 0 1px 0 rgba(25, 77, 160, 0.38);
}

body.ismp-tone:not(.site-context-unsta) .fabtheme-about {
  border-top: 1px solid rgba(25, 77, 160, 0.3);
}

body.ismp-tone:not(.site-context-unsta) hr.linea_bordo {
  border: 0;
  height: 2px;
  margin: 1rem 0;
  border-radius: 1px;
  background: linear-gradient(90deg, var(--ismp-bordo) 0%, var(--ismp-bordo) 50%, rgba(25, 77, 160, 0.55) 100%);
  opacity: 0.95;
}

body.ismp-tone:not(.site-context-unsta) .owl-carousel .owl-dot span,
body.ismp-tone:not(.site-context-unsta) .owl-carousel button.owl-dot span {
  background: rgba(25, 77, 160, 0.3) !important;
}

body.ismp-tone:not(.site-context-unsta) .owl-carousel .owl-dot.active span,
body.ismp-tone:not(.site-context-unsta) .owl-carousel .owl-dot:hover span,
body.ismp-tone:not(.site-context-unsta) .owl-carousel button.owl-dot.active span,
body.ismp-tone:not(.site-context-unsta) .owl-carousel button.owl-dot:hover span {
  background: var(--brand-unsta-blue) !important;
}

body.ismp-tone:not(.site-context-unsta) a:focus-visible,
body.ismp-tone:not(.site-context-unsta) button:focus-visible,
body.ismp-tone:not(.site-context-unsta) .btn:focus-visible {
  outline: 2px solid rgba(25, 77, 160, 0.55);
  outline-offset: 2px;
}

/* Enlaces de cuerpo (no menú, no CTAs, no carrusel nav) */
body.ismp-tone:not(.site-context-unsta) .container a[href]:not(.btn):not([class*="btn-cta"]):not(.nav-link):not(.dropdown-item):not(.header-cta-link):not(.fabtheme-scroll):not(.wa-float):not(.page-link):not(.owl-prev):not(.owl-next):not(.text-white):not(.card_link):not(.post-thumb),
body.ismp-tone:not(.site-context-unsta) .home-wide a[href]:not(.btn):not([class*="btn-cta"]):not(.nav-link):not(.dropdown-item):not(.header-cta-link):not(.fabtheme-scroll):not(.wa-float):not(.page-link):not(.owl-prev):not(.owl-next):not(.text-white):not(.card_link):not(.post-thumb),
body.ismp-tone:not(.site-context-unsta) .blog-posts a[href]:not(.btn):not([class*="btn-cta"]):not(.nav-link):not(.dropdown-item):not(.header-cta-link):not(.fabtheme-scroll):not(.wa-float):not(.page-link):not(.owl-prev):not(.owl-next):not(.text-white):not(.card_link):not(.post-thumb),
body.ismp-tone:not(.site-context-unsta) .card.mx-auto a[href]:not(.btn):not([class*="btn-cta"]):not(.nav-link):not(.dropdown-item):not(.header-cta-link):not(.fabtheme-scroll):not(.wa-float):not(.page-link):not(.owl-prev):not(.owl-next):not(.text-white):not(.card_link):not(.post-thumb) {
  color: var(--brand-unsta-muted);
  text-decoration-color: rgba(25, 77, 160, 0.45);
  text-underline-offset: 2px;
}

body.ismp-tone:not(.site-context-unsta) .container a[href]:not(.btn):not([class*="btn-cta"]):not(.nav-link):not(.dropdown-item):not(.header-cta-link):not(.fabtheme-scroll):not(.wa-float):not(.page-link):not(.owl-prev):not(.owl-next):not(.text-white):not(.card_link):not(.post-thumb):hover,
body.ismp-tone:not(.site-context-unsta) .home-wide a[href]:not(.btn):not([class*="btn-cta"]):not(.nav-link):not(.dropdown-item):not(.header-cta-link):not(.fabtheme-scroll):not(.wa-float):not(.page-link):not(.owl-prev):not(.owl-next):not(.text-white):not(.card_link):not(.post-thumb):hover,
body.ismp-tone:not(.site-context-unsta) .blog-posts a[href]:not(.btn):not([class*="btn-cta"]):not(.nav-link):not(.dropdown-item):not(.header-cta-link):not(.fabtheme-scroll):not(.wa-float):not(.page-link):not(.owl-prev):not(.owl-next):not(.text-white):not(.card_link):not(.post-thumb):hover,
body.ismp-tone:not(.site-context-unsta) .card.mx-auto a[href]:not(.btn):not([class*="btn-cta"]):not(.nav-link):not(.dropdown-item):not(.header-cta-link):not(.fabtheme-scroll):not(.wa-float):not(.page-link):not(.owl-prev):not(.owl-next):not(.text-white):not(.card_link):not(.post-thumb):hover {
  color: var(--brand-unsta-blue);
}

/* Formulario inscripción: franja superior bordó → azul */
body.ismp-tone:not(.site-context-unsta) form.inscripcion-form {
  position: relative;
  padding-top: 10px;
}

body.ismp-tone:not(.site-context-unsta) form.inscripcion-form::before {
  content: "";
  display: block;
  height: 3px;
  border-radius: 2px;
  margin-bottom: 1rem;
  background: linear-gradient(90deg, var(--ismp-bordo) 0%, var(--brand-unsta-blue) 100%);
}

/* Títulos de bloque del formulario (DATOS PERSONALES, etc.) como badge */
body.ismp-tone:not(.site-context-unsta) form.inscripcion-form > .form-group h6 {
  display: inline-block;
  margin-bottom: 0.75rem;
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--brand-unsta-ink);
  background: var(--brand-unsta-surface);
  border: 1px solid var(--brand-unsta-border);
  box-shadow: 0 1px 2px var(--brand-unsta-shadow);
}

/* Campos: borde al enfocar */
body.ismp-tone:not(.site-context-unsta) form.inscripcion-form .form-control:focus,
body.ismp-tone:not(.site-context-unsta) form.inscripcion-form .custom-select:focus,
body.ismp-tone:not(.site-context-unsta) form.inscripcion-form select:focus,
body.ismp-tone:not(.site-context-unsta) form.inscripcion-form textarea:focus,
body.ismp-tone:not(.site-context-unsta) form.inscripcion-form input:focus {
  border-color: var(--brand-unsta-blue) !important;
  box-shadow: 0 0 0 0.2rem rgba(25, 77, 160, 0.18);
}

/* bootstrap-select: botón del desplegable al foco */
body.ismp-tone:not(.site-context-unsta) form.inscripcion-form .bootstrap-select .dropdown-toggle:focus {
  border-color: var(--brand-unsta-blue) !important;
  box-shadow: 0 0 0 0.2rem rgba(25, 77, 160, 0.18);
  outline: none;
}

body.ismp-tone:not(.site-context-unsta) form.inscripcion-form .alert-info {
  color: var(--brand-unsta-ink);
  background: var(--brand-unsta-surface);
  border-color: var(--brand-unsta-border);
}

/* Inscripciones: sin hueco entre requisitos y pie */
body.ismp-tone .inscripciones-requisitos-flush {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body.ismp-tone .inscripciones-requisitos-flush + footer.site-footer {
  margin-top: 0 !important;
}
