/* ==========================================================================
   Tipografía global
   ========================================================================== */

body {
  font-family: 'Libre Baskerville', serif;
  font-variant-numeric: lining-nums;
}

.uc-card .uc-btn { 
    display: inline-block; 
}

h2, h3, h4, h5, h6 {
  font-family: 'Baskervville', sans-serif;
  font-weight: 600;
  font-variant-numeric: lining-nums;
}

h1 {
  font-family: 'Baskervville', serif;
  font-weight: 600;
  line-height: 1.1em;
}

h2, h3, h4, h5 {
  font-weight: 600;
}


.h1{
  font-weight: 600;
}

.h2, .h3, .h4, .h5 {
  font-weight: 600;
}

.humanitas-sans{
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
}


b, strong {
  font-weight: 700;
}

p, .p, .uc-p {
  letter-spacing: .1px;
}

p {
  margin-bottom: 1.2rem;
}

em {
  font-style: italic;
}

blockquote {
  font-style: italic;
}

dd {
  margin: 0;
}

a {
  color: var(--primary-color);
}

a:hover {
  color: color-mix(in srgb, var(--primary-color) 60%, black);
}

@media (min-width: 992px) {
  p, .p, .uc-p {
    line-height: 2;
  }
}

@media (min-width: 992px) {
  h3, .h3, .uc-h3 {
    line-height: 1.4;
  }
}

h5.wp-block-heading {
  letter-spacing: .5px;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.5;
}

h2.wp-block-heading {
  margin-bottom: 16px;
}

h3.wp-block-heading {
  margin-bottom: 12px;
}

hr.wp-block-separator {
  border: 0;
  height: 1px;
  width: 100%;
  overflow: hidden;
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4IiBoZWlnaHQ9IjEiIHZpZXdCb3g9IjAgMCA4IDEiPiAgPHBvbHlnb24gZmlsbD0iZ3JheSIgZmlsbC1ydWxlPSJldmVub2RkIiBwb2ludHM9IjAgMSAwIDAgMyAwIDMgMSIvPjwvc3ZnPg==) center center repeat;
}

.page-template .wp-block-separator {
  border: 0;
}


/* ==========================================================================
   Colores y utilidades de marca
   ========================================================================== */

.color-principal {
  color: var(--primary-color);
}

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

.color-principal-bg_color {
  background-color: var(--primary-color) !important;
}

.btn-color-principal-bg {
  background: var(--primary-color) !important;
  color: #fff !important;
}

.color-enlaces {
  color: var(--primary-color);
  font-weight: 500;
}

.uc-tag {
  background-color: var(--primary-color);
}

.uc-tag:hover {
  background-color: color-mix(in srgb, var(--primary-color) 60%, black);
}

.uc-tags .uc-tag {
  font-family: 'Alegreya Sans', sans-serif;
}

.uc-text-divider.divider-custom-color {
  background-color: var(--primary-color);
}

.divisor::after {
  content: "";
  display: inline-flex;
  vertical-align: middle;
  width: 60px;
  margin-left: 10px;
  border-top: 4px solid var(--primary-color);
}

.custom-border-bottom {
  border-bottom: 8px solid var(--primary-color) !important;
}


/* ==========================================================================
   Botones
   ========================================================================== */

.uc-btn.btn-secondary {
  font-family: 'Alegreya Sans', sans-serif;
}

.uc-btn.btn-cta {
  font-family: 'Alegreya Sans', sans-serif;
}

.uc-btn.btn-inline:hover .uc-icon.icon-shape--rounded,
.uc-btn.btn-inline.hover .uc-icon.icon-shape--rounded {
  background-color: color-mix(in srgb, var(--primary-color) 80%, black);
  color: white;
}


/* ==========================================================================
   Iconos
   ========================================================================== */

.uc-icon.icon-shape--rounded, .uc-svg-icon.icon-shape--rounded {
  background-color: var(--primary-color);
}

.uc-icon.icon-shape--rounded, .uc-svg-icon.icon-shape--rounded:hover {
  background-color: var(--primary-color);
}

.color-enlaces .uc-icon.icon-shape--rounded,
.uc-svg-icon.icon-shape--rounded {
  background-color: var(--primary-color);
}

.uc-pagination_next i.uc-icon, .uc-pagination_prev i.uc-icon {
  color: var(--primary-color);
}


/* ==========================================================================
   Navegación / Menú
   ========================================================================== */

.uc-navbar_nav {
  font-family: 'Alegreya Sans', sans-serif;
}

.estilos-menu {
  background-color: #373737 !important;
  border-bottom: none;
}

.estilos-menu .uc-navbar .uc-navbar_nav .nav-item .btn-admission,
.uc-navbar .uc-navbar_nav .nav-item .uc-btn {
  color: white;
}

.estilos-menu .uc-navbar-dropdown_menu {
  background-color: #373737;
}

.estilos-menu .uc-navbar-dropdown_menu a {
  color: white !important;
}

.estilos-menu i.uc-icon {
  color: white;
}

.estilos-menu .uc-navbar_arrow,
.uc-navbar_arrow::before {
  background: #373737;
}

.uc-navbar .uc-navbar_nav .nav-item.current .uc-btn {
  border-bottom: 0;
}

.uc-navbar .uc-navbar_nav .nav-item .uc-btn.active {
  border-bottom: 2px solid;
}

.uc-navbar .uc-navbar_nav .nav-item {
  border-right: 0 !important;
  border-left: 0 !important;
}

.uc-navbar .uc-navbar_nav .nav-item .uc-btn{
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-family: 'Baskervville';
}

.uc-navbar-dropdown_menu .dropdown_item--heading a{
  font-size: 0.8em;
}

.menu-menu-principal-container {
  width: 100%;
}

.menu-con-searchbar-container {
  position: relative;
}

.uc-navbar_mobile-content .uc-icon{
  color: var(--primary-color);
}

/* ==========================================================================
   Barra de búsqueda overlay del header
   ========================================================================== */

/* Overlay de búsqueda - absolute sobre el nav */
.search-bar-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #373737;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  display: flex;
  align-items: center;
}

.search-bar-overlay.active {
  opacity: 1;
  visibility: visible;
}

/* Versión móvil: pegada justo debajo de la barra del header, no a pantalla completa */
.uc-navbar_mobile-bar {
  position: relative;
}

.search-bar-overlay--mobile {
  position: absolute;
  top: 100%;
  left: 0;
  height: auto;
}

/* Ajustes específicos del overlay en su breakpoint móvil (d-lg-none) */
@media (max-width: 991px) {
  .search-bar-overlay--mobile {
    background-color: #303030;
    padding: 4px 0;
  }
}

/* Botón de búsqueda */
.search-toggle {
  background-color: transparent;
  border: none;
  cursor: pointer;
  padding: 6px;
  color: #fff;
  transition: opacity 0.3s ease;
  margin-left: 12px;
  flex-shrink: 0;
  height: 100%;
  margin-right: 12px;
}

@media (max-width: 991px) {
.search-toggle {
  background-color: transparent;
  border: none;
  cursor: pointer;
  padding: 16px 4px;
  color: #fff;
  transition: opacity 0.3s ease;
  margin-left: 8px;
  flex-shrink: 0;
  height: 100%;
  margin-right: 8px;
}
}

.uc-navbar_mobile-button{
  font-family: 'Alegreya Sans',Arial, Helvetica, sans-serif;
  min-width: 52px;
  height: 100%;
}

.search-toggle:hover {
  opacity: 0.8;
}

/* Campo de búsqueda */
.search-bar-overlay .search-field {
  width: 100%;
  padding: 12px 20px;
  font-size: 16px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.1);
  color: white;
  border-radius: 4px;
  outline: none;
}

.search-bar-overlay .search-field::placeholder {
  color: rgba(255, 255, 255, 0.7);
}

.search-bar-overlay .search-field:focus {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.5);
}

/* Botón cerrar */
.search-close {
  background: transparent;
  border: none;
  cursor: pointer;
  color: white;
  padding: 8px;
  transition: transform 0.2s ease;
}

.search-bar-overlay .searchandfilter ul {
  padding: 0;
}

.search-bar-overlay label {
  width: 100%;
}

.search-bar-overlay label input {
  width: 100%;
  background-color: #fff;
  border: 1px solid #c6c6c6;
  border-radius: 4px;
  display: block;
  height: 45px;
  line-height: 1;
  min-width: 100%;
  padding: 12px 16px;
  position: relative;
  transition: .2s ease;
}


/* ==========================================================================
   Buscadores (Search & Filter)
   ========================================================================== */

.searchandfilter {
  font-family: 'Alegreya Sans', sans-serif;
}

.buscador-home {
  background-color: #F6F6F6;
  border-radius: 4px;
  padding: 20px 24px;
}

.buscador-home .searchandfilter ul {
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 16px;
}

.buscador-home .searchandfilter ul li:first-child {
  width: 100%;
  flex: auto !important;
  flex-shrink: 0;
}

.buscador-home .searchandfilter ul li {
  flex: 1;
  padding: 0;
}

.buscador-home .searchandfilter label {
  width: 100%;
}

.buscador-home .searchandfilter input[type="submit"] {
  width: 100%;
}

.ss-wrapper .ss-trigger .ss-trigger-label.ss-placeholder {
  color: #212529 !important;
}

div.buscador-home li.sf-field-taxonomy-campus,
div.buscador-home li.sf-field-taxonomy-categoria-palabra,
div.buscador-home li.sf-field-taxonomy-categoria,
div.buscador-home li.sf-field-search {
  width: 100%;
}

div.buscador-home li.sf-field-taxonomy-campus label,
div.buscador-home li.sf-field-taxonomy-categoria-palabra label,
div.buscador-home li.sf-field-taxonomy-categoria label,
div.buscador-home li.sf-field-search label {
  width: 100%;
}

.buscador-home select.sf-input-select {
  background-color: #fff;
  border: 1px solid #c6c6c6;
  border-radius: 4px;
  display: block;
  height: 45px;
  line-height: 1;
  min-width: 100%;
  padding: 12px 16px;
  position: relative;
  transition: .2s ease;
  width: 100%;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none'%3E%3Cpath fill='%230176DE' fill-rule='evenodd' d='M5.833 8.334 10 12.501l4.167-4.167H5.833Z' clip-rule='evenodd'/%3E%3C/svg%3E") no-repeat 100% #fff;
  background-position-x: 100%;
  background-position-y: center;
  background-position: 98%;
}

.buscador-home input.sf-input-text {
  background-color: #fff;
  border: 1px solid #c6c6c6;
  border-radius: 4px;
  display: block;
  height: 45px;
  line-height: 1;
  min-width: 100%;
  padding: 12px 16px;
  position: relative;
  transition: .2s ease;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiPjxkZWZzPjxwYXRoIGlkPSJhIiBkPSJNMTUuNTAyIDkuNDkxaC0uNzk0bC0uMjc2LjI3NEE2LjQ3IDYuNDcgMCAwIDEgMTYgMTMuOTkxYTYuNSA2LjUgMCAxIDEtNi41LTYuNSA2LjQ3IDYuNDcgMCAwIDEgNC4yMjUgMS41NjZsLjI3Ni0uMjc0di0uNzkyTDE4Ljk5OSAzbDEuNDkxIDEuNDkxLTQuOTg4IDVabS02LjAwMiAwYTQuNSA0LjUgMCAxIDAgMCA5IDQuNSA0LjUgMCAwIDAgMC05WiIvPjwvZGVmcz48dXNlIHhsaW5rOmhyZWY9IiNhIiBmaWxsPSIjMDE3NkRFIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHRyYW5zZm9ybT0ibWF0cml4KDEgMCAwIC0xIC0zIDIwLjQ5MSkiLz48L3N2Zz4=");
  background-position: right 16px center;
  background-repeat: no-repeat;
}

.buscador-home .sf-field-submit input {
  color: #fff;
  padding: 12px 16px;
  font-weight: 500;
  background-color: var(--primary-color);
  box-shadow: 0 0 8px 0 rgba(136, 136, 136, .18);
  align-items: center;
  border: none;
  border-radius: 4px;
  display: flex;
  justify-content: space-between;
  line-height: 1.3;
  position: relative;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: background-color .2s ease;
}

@media (max-width: 1250px) {

  .buscador-home .searchandfilter ul {
    gap: 12px;
  }

  div.buscador-home li.sf-field-taxonomy-campus,
  div.buscador-home li.sf-field-taxonomy-categoria-palabra,
  div.buscador-home li.sf-field-taxonomy-categoria {
    display: none;
  }

}

/* Ajustes de color al svg de los inputs (sobreescribe los buscadores anteriores) */

.buscador-home select.sf-input-select {
  background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none'%3E%3Cpath fill='%23A31033' fill-rule='evenodd' d='M5.833 8.334 10 12.501l4.167-4.167H5.833Z' clip-rule='evenodd'/%3E%3C/svg%3E") no-repeat 100% #fff;
}

.buscador-home input.sf-input-text {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18'%3E%3Cpath fill='%23A31033' fill-rule='evenodd' d='M15.502 9.491h-.794l-.276.274A6.47 6.47 0 0 1 16 13.991a6.5 6.5 0 1 1-6.5-6.5 6.47 6.47 0 0 1 4.225 1.566l.276-.274v-.792L18.999 3l1.491 1.491-4.988 5Zm-6.002 0a4.5 4.5 0 1 0 0 9 4.5 4.5 0 0 0 0-9Z' transform='matrix(1 0 0 -1 -3 20.491)'/%3E%3C/svg%3E");
}

.buscador-home.buscador-diario-financiero .searchandfilter ul li:first-child {
  flex: fit-content !important;
}

.buscador-portada .searchandfilter .sf-field-reset {
  display: none;
}

.buscador-general .searchandfilter .sf-field-reset {
  display: none;
}

.buscador-home.buscador-diario-financiero .searchandfilter ul {
  flex-wrap: nowrap;
}

.buscador-home.buscador-palabras .searchandfilter ul {
  flex-wrap: nowrap;
}

.buscador-home.buscador-noticias .searchandfilter ul {
  flex-wrap: nowrap;
}

@media (max-width: 768px) {

  .buscador-home.buscador-diario-financiero .searchandfilter ul {
    flex-wrap: wrap;
  }

  .buscador-home.buscador-palabras .searchandfilter ul {
    flex-wrap: wrap;
  }

  .buscador-home.buscador-noticias .searchandfilter ul {
    flex-wrap: wrap;
  }

}

.search-filter-scroll-loading {
  margin: 12px auto;
}

@media (max-width: 992px) {

  .buscador-portada .sf-field-post-meta-fecha_de_publicacion, .buscador-portada .sf-field-taxonomy-autor, .buscador-portada .sf-field-taxonomy-etiqueta, .buscador-portada .sf-field-post_type {
    display: none;
  }

}


/* ==========================================================================
   Breadcrumb
   ========================================================================== */

.uc-breadcrumb, .uc-dev-footer {
  font-family: 'Alegreya Sans', sans-serif;
}

li.uc-breadcrumb_item a {
  white-space: nowrap;
}

.uc-breadcrumb .uc-breadcrumb_item .uc-icon {
  color: var(--primary-color);
}

.uc-breadcrumb .uc-breadcrumb_item .icon-custom-color {
  color: var(--primary-color);
}

.banner-pags .color-white .uc-breadcrumb .uc-breadcrumb_item a {
  color: #fff;
}

/* Breadcrumb mobile: trunca items largos con ellipsis */
@media (max-width: 767px) {
  .uc-breadcrumb {
    flex-wrap: nowrap;
    overflow: hidden;
  }
  .uc-breadcrumb .uc-breadcrumb_item {
    min-width: 0;
    flex-shrink: 1;
  }
  .uc-breadcrumb .uc-breadcrumb_item a,
  .uc-breadcrumb .uc-breadcrumb_item.current {
    display: block;
    max-width: 100px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .uc-breadcrumb .uc-breadcrumb_item.current {
    max-width: 140px;
  }
  /* Primer item (Inicio): no se comprime y muestra completo */
  .uc-breadcrumb .uc-breadcrumb_item:first-child {
    flex-shrink: 0;
  }
  .uc-breadcrumb .uc-breadcrumb_item:first-child a {
    max-width: none;
    overflow: visible;
  }
  /* El separador (icono chevron) no se encoge */
  .uc-breadcrumb .uc-breadcrumb_item .uc-icon {
    flex-shrink: 0;
  }
}


/* ==========================================================================
   Cards, listados y overlays
   ========================================================================== */

.uc-table-list .uc-table-list_content {
  border-top: none;
}

ul.listado-tabla {
  list-style: none;
  border-top: 4px solid #eaeaea;
  padding: 24px;
  flex-grow: 1;
}

.card-overlap {
  margin-top: -240px;
}

.image-top-overlay {
  background-image: linear-gradient(0deg, rgba(43, 76, 137, 0) 30%, rgba(0, 0, 0, .7) 90%);
  height: 100%;
  position: absolute;
  top: 0;
  width: 100%;
}

.card-overlap {
  margin-top: -240px;
}

/* Nota: sobreescribe el gradiente de .image-top-overlay definido arriba */
.image-top-overlay {
  background-image: linear-gradient(180deg, rgba(43, 76, 137, 0) 30%, rgba(0, 0, 0, .7) 90%);
  height: 100%;
  position: absolute;
  top: 0;
  width: 100%;
}

.carousel-custom-height .uc-card_body {
  height: auto;
}

.card-tienda h2 {

  font-variant: normal;
}

.card-tienda h2 a {
  line-height: 1.4;
}

.card-noticia img {
  height: 270px;
  object-fit: cover;
  background-color: white;
}

.card-noticia h3 {
  font-variant: normal;
  font-weight: 600;
}

.card-podcast h3 a, .card-noticia h3 a {
  line-height: 1.5;
}

.card-libros h3 {
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
  font-variant: normal;
  font-weight: 600;
}

.card-libros h3 a {
  line-height: 1.2;
}

.card-numeros .counter-number {
  font-family: 'Libre Baskerville', serif;
  font-weight: 600;
}

.diario-financiero-card h3 a{
  line-height: 1.4;
}


.diario-financiero-card img {
  height: 270px;
  object-fit: contain;
  background-color: #f6f6f6;
  padding: 16px;
}

.tabla-audiencias ul li .uc-btn.btn-listed {
  padding: 16px;
}

.item-sin-enlace {
  pointer-events: none;
}


/* ==========================================================================
   Home – Categorías
   ========================================================================== */

.tag-cloud {
  padding: 0;
  list-style: none;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
}


/* ==========================================================================
   Slider / Carousel
   ========================================================================== */

.uc-carousel_index .current {
  color: var(--primary-color);
}

.uc-pagination_pages .page-item.active .page-link, .uc-pagination_pages .page-item:hover .page-link {
  color: var(--primary-color);
  border: 1px solid var(--primary-color);
}

.uc-primary-carousel--home-card h2 {
  line-height: 1em;
}

.uc-carousel--home-card .tns-item {
  padding: 0 !important;
}

.slider-hero-titulo {
  font-family: 'Baskervville', sans-serif;
  font-variant: small-caps;
  font-variant-numeric: lining-nums;
}

@media (min-width: 992px) {
  .uc-carousel--home-card {
    height: 72vh;
    overflow: hidden;
  }
}

@media (min-width: 768px) {
  .uc-hero {
    height: 72vh;
  }
}


/* ==========================================================================
   Testimonios y reseñas
   ========================================================================== */

.img-avatar-testimonios {
  border-radius: 500px;
  height: auto;
  width: 100px;
}

.testimonio-autor-container {
  display: flex;
  align-items: center;
}

.uc-carousel-cards_resenas {
  display: flex;
}

.uc-carousel-cards_testimonios {
  display: flex;
}

.uc-quote p {
  font-family: 'Libre Baskerville', Times, serif;
  font-weight: 400;
  font-size: 0.7em;
  letter-spacing: 0;
}

@media (max-width: 991px) {
  .uc-quote p {
    font-size: 0.9em;
    line-height: 2;
  }
}

/* ==========================================================================
   Noticias (single)
   ========================================================================== */

.humanitas-post-content h2 {
  margin-top: 38px;
  margin-bottom: 24px;
  line-height: 1.5;
}

.humanitas-post-content h3 {
  margin-top: 38px;
  margin-bottom: 12px;
}

.humanitas-post-content h4,
.humanitas-post-content h5,
.humanitas-post-content h6 {
  margin-bottom: 32px;
  line-height: 1.8;
}

.humanitas-post-content blockquote {
  padding-left: 0;
  margin: 0;
  border-left: 0;
  color: #212529;
  font-style: italic;
}


/* ==========================================================================
   Revistas
   ========================================================================== */

.banner-color-overlap {
  position: relative;
  height: 172px;
  background-color: #313131;
}

@media (max-width: 991px) {

  .banner-color-overlap {
    display: none;
  }

}

@media (min-width: 992px) {

  .absolute-title {
    margin-top: -55px;
    position: relative;
    z-index: 5;
  }

  .absolute-title>.container {
    background: #fff;
    border-radius: 8px 8px 0 0;
    box-shadow: 0 -15px 15px 0 rgba(0, 0, 0, .03);
  }

  .image-top-overlay {
    background-image: linear-gradient(180deg, rgba(43, 76, 137, 0) 30%, rgba(0, 0, 0, .7) 90%);
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
  }
}



.titulo-articulo-revista {
  font-variant: small-caps;
}

.autor-articulo-container {
  font-style: italic;
}


/* ==========================================================================
   Revista – Índice
   ========================================================================== */

.indice-categoria .autor-indice {
  font-family: 'Libre Baskerville', serif;
  font-style: italic;
  color: #212529;
  line-height: 1.6;
}

.indice-categoria .titulo-indice {
  font-weight: 700;
  color: #212529;
  text-transform: uppercase;
  line-height: 1.5;
}

.indice-categoria a {
  text-decoration: none;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 6px 0;
}

.indice-categoria .pdf-categoria-link .uc-icon{
  color: var(--primary-color);
}

.indice-categoria .titulo-categoria h3 {
  font-weight: 700;
  text-transform: uppercase;
  flex-shrink: 0;
}

.indice-categoria .container-sin-enlace {
  padding: 6px 0;
}

.titulo-categoria {
  display: flex;
  gap: 12px;
  align-items: center;
}


/* ==========================================================================
   Resultados de búsqueda
   ========================================================================== */

.resultados-busqueda h2 {
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
  font-variant: normal;
  font-weight: 700;
}

.resultados-busqueda h2 a {
  color: var(--primary-color);
}

.resultados-busqueda h2 a:hover {
  color: var(--primary-color);
}

.resultados-busqueda .entry-summary {
  margin: 8px 0;
}

.resultados-busqueda .entry-summary p {
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
}

.search-result_meta {
  display: flex;
  gap: 12px;
}

.search-result_meta .h6 {
  display: inline;
}


/* ==========================================================================
   Footer
   ========================================================================== */

.uc-dev-footer a {
  color: var(--primary-color);
}

.menu-menu-footer-container ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.menu-menu-footer-container ul li {
  margin-bottom: 16px;
}

.menu-menu-footer-container ul li a:hover {
  color: #fff;
}

img.footer-logo {
  max-width: 320px;
}


/* ==========================================================================
   Suscripción
   ========================================================================== */

.hero-suscripcion {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

@media (max-width: 991px) {
  .hero-suscripcion {
    background-image: none !important;
  }
}

.hero-suscripcion .uc-breadcrumb{
    justify-content: center;
}

.hero-suscripcion h1 {
  font-variant: small-caps;
}

@media (max-width: 992px) {

  .imagen-banner-suscripcion {
    display: none;
  }

}

.plan-card .uc-tag {
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
}

.plan-card.seleccionado {
  border: 1px solid var(--primary-color);
}

.plan-card .uc-tag:hover {
  background-color: var(--primary-color);
}

.newsletter-modal-imagen {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}


/* ==========================================================================
   Formularios
   ========================================================================== */

.humanitas-form-sombra {
  box-shadow: 0 0 8px 0 hsl(0deg 0% 53% / 18%);
  padding: 40px;
}

.uc-form-group {
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
}

.nota-formulario-uc {
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
}

.uc-input-style {
  font-family: 'Alegreya Sans', sans-serif;
}

.wpcf7-not-valid-tip {
  color: var(--primary-color);
}


/* ==========================================================================
   Scroll to top
   ========================================================================== */

.scroll-to-top {
  position: fixed;
  bottom: 32px;
  right: 32px;
  z-index: 999;
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px);
  transition: opacity .25s ease, transform .25s ease;
}

#scrollToTop i {
  color: #fff;
  border-radius: 50%;
  padding: 10px;
  font-size: 32px;
}

@media (max-width: 767px) {
  #scrollToTop i {
    padding: 6px;
    font-size: 24px;
  }
}

.scroll-to-top--visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

@media (max-width: 767px) {
  .scroll-to-top {
    bottom: 20px;
    right: 16px;
  }
}


/* ==========================================================================
   Utilidades varias
   ========================================================================== */

li.item-current, .e-title {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  display: block !important;
}

.personas-listado {
  padding: 0;
  margin: 0;
  list-style: none;
}

.personas-listado_item {
  margin-bottom: 12px;
}

.personas-listado_item i {
  margin-right: 6px;
}


/* Cuadernos */


.humanitas-post-content h4.titulo-indice{
    margin-bottom: 8px;
}

.humanitas-post-content h5{
  margin-bottom: 13px;
  line-height: 1.8;
  font-size: 1em;
  font-weight: 400;
}


/* Ajustes de lectura */

.humanitas-post-content{
  font-size: .95em;
}







/* Tabs audiencia */


.uc-tabs .uc-tabs_item-link.active{
  border-bottom: 2px solid var(--primary-color);
}

.uc-tabs .uc-tabs_item-link:hover{
  border-bottom: 2px solid var(--primary-color);
}

.uc-tabs .uc-tabs_item-link:focus {
  outline-color: var(--primary-color);
}

.uc-btn.btn-listed:first-child {
  border-top: 0;
}

.uc-tabs .uc-tabs_item-link {
  transition: border 0 ease;
}


/* Ajustes formulario */


.campos-obligatorios-leyenda{
  font-family: 'Alegreya Sans', sans-serif
}

.consentimiento{
  font-family: 'Alegreya Sans', sans-serif;
  border: 1px solid #eaeaea;
  border-radius: 4px;
  padding: 16px;
  
}

.consentimiento p{
line-height: 1.8;
}

.wpcf7-list-item{
  margin: 0;
}

/* Ajuste botones */

.uc-btn.btn-inline{
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
}


/* Sidebar */

.sidebar-info-block .sidebar-content-item{
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
}









 
.humanitas-post-content {
  --sangria: 1.5em;      /* 1.2–2em. Clásico de libro: 1.5em */
  --gap-parrafo: 1em;      /* 0 = libro puro. Ver nota al final */
}
 



/* --------------------------------------------------------------------------
   1. SANGRÍA
   -------------------------------------------------------------------------- */
 
.humanitas-post-content > p {
  text-indent: var(--sangria);
  margin-block: 0 var(--gap-parrafo);
}
 
/* El primero sin sangría */
.humanitas-post-content > p:first-of-type {
  text-indent: 0;
}
 
/* Y todo párrafo que abre sección nueva. Esta es la convención real de
   libro: después de un título, una imagen o una cita, el párrafo NO se
   sangra, porque el elemento anterior ya marca el corte. Si sangrás igual,
   se ve como un error de composición. */
.humanitas-post-content > :is(
  h1, h2, h3, h4, h5, h6,
  figure, blockquote, hr, ul, ol, table,
  .wp-block-image, .wp-block-embed, .wp-block-pullquote,
  .wp-block-quote, .wp-block-table, .wp-block-separator
) + p {
  text-indent: 0;
}
 
 
/* --------------------------------------------------------------------------
   2. JUSTIFICADO
   -------------------------------------------------------------------------- */
 
.humanitas-post-content > p {
  text-align: justify;
 
  /* Estira SÓLO los espacios entre palabras. Sin esto algunos motores
     pueden repartir el sobrante entre las letras y te destruye la textura
     de la serif. */
  text-justify: inter-word;
 
  /* La última línea del párrafo no se estira: arranca y termina natural.
     Es el default en la práctica, pero declararlo te protege de que el
     tema del Kit Digital lo haya cambiado a "justify". */
  text-align-last: start;
 
  /* Chrome 117+ / Safari 26+: en vez de cortar línea por línea de forma
     codiciosa, evalúa el párrafo completo y reparte mejor. En texto
     justificado mejora los ríos de forma notoria. Degrada sin problema. */
  text-wrap: pretty;
}
 
 
/* --------------------------------------------------------------------------
   3. PARTICIÓN DE PALABRAS
   Esto es LO QUE EVITA LOS ESPACIADOS RAROS. Justificar sin partición es la
   causa número uno de los "ríos" (esos canales blancos que se ven en
   diagonal). El navegador tiene que estirar los espacios sí o sí; si le
   permitís cortar palabras, tiene mucho menos sobrante que repartir.
   -------------------------------------------------------------------------- */
 
.humanitas-post-content > p {
  hyphens: auto;
  -webkit-hyphens: auto;
 
  /* Palabra de mínimo 6 letras · mínimo 3 letras antes del guión ·
     mínimo 3 después. Sin esto te parte "de-be" o deja fragmentos de 2
     letras colgando, que se lee peor que el río que estabas evitando. */
  hyphenate-limit-chars: 6 3 3;
 
  /* Equivalente prefijado para Safari viejo */
  -webkit-hyphenate-limit-before: 3;
  -webkit-hyphenate-limit-after: 3;
 
  /* Máximo 2 líneas seguidas terminadas en guión. Tres o más forman una
     "escalerilla" que el ojo lee como un error. Soporte parcial (Safari),
     pero no cuesta nada dejarlo. */
  hyphenate-limit-lines: 2;
  -webkit-hyphenate-limit-lines: 2;
 
  /* Red de seguridad: una URL larga o un término alemán no rompe la caja,
     pero word-break:normal impide que parta palabras comunes por la mitad
     sin guión. Nunca uses word-break:break-all con justificado. */
  overflow-wrap: break-word;
  word-break: normal;
}
 
/* Cosas que no se deben partir nunca */
.humanitas-post-content :is(abbr, code, cite, .no-partir) {
  hyphens: none;
}
 
 
/* --------------------------------------------------------------------------
   4. QUÉ NO SE JUSTIFICA NI SE SANGRA
   text-indent se hereda, así que hay que resetearlo explícitamente o te
   aparece sangría dentro de las citas y los pies de foto.
   -------------------------------------------------------------------------- */
 
.humanitas-post-content :is(figcaption, .wp-element-caption, li, cite, th, td, dt, dd) {
  text-indent: 0;
  hyphens: none;
}
 
/* Las citas sí se justifican (son prosa), pero sin sangría */
.humanitas-post-content blockquote p {
    text-indent: 0;
    font-size: 1.18em;
    text-indent: 0;
    text-align: justify;
    text-wrap: pretty;
    hyphens: auto;
    hyphenate-limit-chars: 6 3 3;
    overflow-wrap: break-word;
    word-break: normal;
}

.humanitas-post-content blockquote p + p {
  text-indent: var(--sangria);
}
 
 
/* --------------------------------------------------------------------------
   5. MOBILE: se apaga el justificado
   Por debajo de ~45 caracteres por línea el justificado produce ríos
   SIEMPRE, no importa cuánta partición le metas: simplemente no hay
   suficientes espacios en la línea para absorber el sobrante. Con Libre
   Baskerville a 16px en un viewport de 375px estás en ~38 caracteres.
   La sangría se mantiene, el justificado se va.
   -------------------------------------------------------------------------- */
 
@media (max-width: 600px) {
  .humanitas-post-content > p {
    text-align: left;
    --sangria: 1.2em;
    line-height: 1.8;
  }

  .humanitas-post-content blockquote p{
    font-size: 1em;
  }

}
 
 
/* --------------------------------------------------------------------------
   6. IMPRESIÓN
   orphans y widows sólo tienen efecto en contextos de fragmentación
   (impresión, multicolumna). En pantalla no hacen nada, por eso van acá.
   -------------------------------------------------------------------------- */
 
@media print {
  .humanitas-post-content > p {
    orphans: 2;   /* mín. 2 líneas al pie de página */
    widows: 2;    /* mín. 2 líneas al inicio de la siguiente */
  }
}
 
 
/* ==========================================================================
   NOTA SOBRE --gap-parrafo
 
   Dejé 0 porque es lo correcto en libro: la sangría ES el separador, y usar
   los dos a la vez es redundante (se lee como si cada párrafo fuera una
   sección aparte).
 
   Pero en pantalla, para artículos muy largos, un valor chico ayuda a que
   el lector pueda hacer pausas visuales. Si lo querés, usá .35em como
   máximo. Nunca 1em o más junto con sangría.
   ========================================================================== */



 .titulo-revista {
  font-variant: small-caps;
  font-variant-numeric: lining-nums;
}

.titulo-noticia{
  text-transform: uppercase;
  line-height: 1.4em;
}

.titulo-noticia.titulo-articulo-revista{
  text-transform: inherit;
    font-variant: small-caps;
  font-variant-numeric: lining-nums;
}

/* CApitalizar */

.humanitas-post-content p.has-drop-cap:not(:focus)::first-letter {
  float: left;
  font-size: 4em;
  line-height: 0.5;
  padding-right: 0.1em;
  padding-top: 0.15em;

  /* neutralizar los defaults del core */
  margin: 0;
  font-weight: 400;
  font-style: normal;
  text-transform: none;
}


  .humanitas-post-content p.has-drop-cap{
    text-indent: 0!important;
  }


/* mantener el clearfix, pero sin los 14px */
.humanitas-post-content p.has-drop-cap:not(:focus)::after {
  padding-top: 0;
}

/* Ajustes formularios */


.uc-message .uc-message_close-button{
  z-index: 99;
  
}

.uc-message .uc-message_close-button .uc-icon{
  color: var(--primary-color);
}

.uc-input-style {
  min-width: 100%;
}

.uc-input-style {
  width: 100%;
  display: block;
  border: 1px solid #c6c6c6;
  padding: 12px 16px;
  line-height: 1;
  transition: .2s ease;
  position: relative;
  height: 45px;
  background-color: #fff;
  min-width: 100%;
  border-radius: 4px;
}

.search-filter-reset {
  display: flex;
  align-items: center;
  gap: 8px; 
}

.search-summary__reset a{
  text-decoration: none;
}



@media (max-width: 767.9px) {
  .uc-card.card-height--same {
    height: 100%;
  }
}

.descripcion-tienda p{
  font-size: .9em;
  line-height: 2.3;
}

@media (max-width: 767.9px) {
  .descripcion-tienda p{
      line-height: 2.3;
  }

}

@media (max-width: 991.8px) {

  .absolute-title .ml-48{
      margin-left: 0;
  }

}



/* FORMS AJUSTES */

.uc-btn.btn-cta {
  display: block;
  padding: 12px 16px;
  font-weight: 500;
  text-align: center;
  color: #fff;
  background-color: var(--primary-color);
}

.uc-btn.btn-cta:hover, .uc-btn.btn-cta.hover {
  text-decoration: none;
  background-color: var(--primary-color);
}

.wpcf7 .wpcf7-submit:disabled {
  background-color: #999;
}

.wpcf7 form.sent .wpcf7-response-output{
  border-color: #0a0;
  background-color: rgba(0,170,0,.1);
}

.wpcf7 form.sent .wpcf7-response-output::before {
  font-family: 'Material Icons';
  font-weight: 400;
  font-style: normal;
  font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  content: "check_circle";
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  font-size: 18px;
  margin-right: 8px;
  color: #0a0;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
  border-color: #f24f4f;
  background-color: rgba(242,79,79,.1);
}

.wpcf7 form.invalid .wpcf7-response-output::before,
.wpcf7 form.failed .wpcf7-response-output::before,
.wpcf7 form.spam .wpcf7-response-output::before,
.wpcf7 form.aborted .wpcf7-response-output::before {
  font-family: 'Material Icons';
  font-weight: 400;
  font-style: normal;
  font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  content: "error";
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  font-size: 18px;
  margin-right: 8px;
  color: #f24f4f;
}

.wpcf7 form .wpcf7-response-output {
  margin: 0;
  padding: 7px 16px;
  border: 1px solid #00a0d2;
    border-top-color: rgb(0, 160, 210);
    border-right-color: rgb(0, 160, 210);
    border-bottom-color: rgb(0, 160, 210);
    border-left-color: rgb(0, 160, 210);
border-radius: 4px;
    font-size: 1em;
  font-family: 'Alegreya Sans', Arial, Helvetica;
  letter-spacing: .2px;
}

.btn-spinner-container p{
  display: flex;
  gap: 12px;
  align-items: center;
}

.campos-obligatorios{
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
}

.uc-navbar_mobile-list{
  font-size:.9em;
  text-transform: uppercase;
  letter-spacing: .2px;
}


/* ----- Nuevos post lib 19-08 ----- */

/* Gutenberg */

pre.wp-block-verse{
  font-size: .9em;
  line-height: 2.2;
  background: transparent;
  font-family: inherit;
}

.wp-block-gallery {
  width: 100%;
}

.wp-element-caption {
  font-style: italic;
  font-size: .95em;
}

.wp-block-image :where(figcaption) {
  margin-bottom: 1em;
  margin-top: 1em;
}

ol.wp-block-footnotes{
  font-family: 'Alegreya Sans', Arial, Helvetica, sans-serif;
  padding:0 0 0 12px;
  margin:0;
  letter-spacing: 0.1px;
}

ol.wp-block-footnotes li{
  margin-bottom: 8px;
}

/* Contador*/

.wp-block-footnotes {
  list-style: none;
  counter-reset: nota;
  padding-left: 0; 
	margin-left: 0;
}

.wp-block-footnotes li {
  counter-increment: nota;
}

.wp-block-footnotes li::before {
  content: "[" counter(nota) "] ";
}







/* ==========================================================================
   Cita destacada — .is-style-cita-flotante sobre core/pullquote
   Sin floats: siempre ancho completo, con filetes arriba y abajo.
   ========================================================================== */

/* --- Base --- */
.wp-block-pullquote.is-style-cita-flotante {
    border: none;
    width: 100%;
    max-width: none;
  margin: 0.5em;
     padding: 1.5em;
}

.wp-block-pullquote.is-style-cita-flotante blockquote {
    margin: 0;
    padding: 0;
}

.wp-block-pullquote.is-style-cita-flotante p {
    font-family: "Baskervville", "Libre Baskerville", Georgia, serif;
    font-style: italic;
    font-size: 1.3rem;
    line-height: 1.5;
    margin: 0;
    padding: 0;
    text-indent: 0;
    text-align: justify;
    text-wrap: pretty;
    hyphens: auto;
    hyphenate-limit-chars: 6 3 3;
    overflow-wrap: break-word;
    word-break: normal;
}

/* Si el redactor elige color desde el panel del bloque, gana el suyo */
.wp-block-pullquote.is-style-cita-flotante.has-text-color p {
    color: inherit;
}

/* Citation opcional (autor de la cita) */
.wp-block-pullquote.is-style-cita-flotante cite {
    display: block;
    margin-top: 0.6em;
    font-size: 0.85rem;
    font-style: normal;
    letter-spacing: 0.03em;
    text-align: justify;
    color: inherit;
}