/* Estilos SEO compartidos — no afectan la home SPA */

.seo-breadcrumb {
  padding: 0.85rem 0 0;
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.88);
}

.seo-breadcrumb-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.45rem;
  align-items: center;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.seo-breadcrumb a {
  color: rgba(255, 255, 255, 0.95);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.seo-breadcrumb [aria-current="page"] {
  color: #fff;
  font-weight: 600;
}

.seo-breadcrumb-sep {
  opacity: 0.65;
  user-select: none;
}

.landing-section .seo-breadcrumb,
.seo-breadcrumb--light {
  color: var(--text-secondary, #546e7a);
}

.landing-section .seo-breadcrumb a,
.seo-breadcrumb--light a {
  color: var(--primary, #0d47a1);
}

.landing-section .seo-breadcrumb [aria-current="page"],
.seo-breadcrumb--light [aria-current="page"] {
  color: var(--text-primary, #212121);
}

.seo-prose {
  max-width: 760px;
  margin: 0 auto;
  color: var(--text-secondary, #546e7a);
  font-size: 1.05rem;
  line-height: 1.65;
}

.seo-prose p {
  margin: 0 0 1rem;
}

.seo-prose ol,
.seo-prose ul {
  margin: 0 0 1.25rem;
  padding-left: 1.25rem;
}

.seo-prose li {
  margin-bottom: 0.45rem;
}

.seo-dept-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 0.75rem 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.seo-dept-list a {
  display: block;
  padding: 0.75rem 0.9rem;
  border: 1px solid rgba(13, 71, 161, 0.18);
  border-radius: 10px;
  color: var(--primary, #0d47a1);
  text-decoration: none;
  font-weight: 600;
  background: #fff;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.seo-dept-list a:hover,
.seo-dept-list a:focus-visible {
  border-color: rgba(13, 71, 161, 0.45);
  background: rgba(13, 71, 161, 0.04);
}

.seo-related {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1.1rem;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.seo-related a {
  color: var(--primary, #0d47a1);
  font-weight: 600;
}

.seo-note {
  max-width: 760px;
  margin: 0 auto 1.5rem;
  text-align: center;
  color: var(--text-secondary, #546e7a);
  font-size: 0.98rem;
  line-height: 1.55;
}

@media (max-width: 640px) {
  .seo-dept-list {
    grid-template-columns: 1fr;
  }
}
