/*!
 * Raúl Rojas Soriano — estilos del tema (v2, Bootstrap 5.3)
 * Se carga DESPUÉS de bootstrap.min.css. Contiene:
 *  1. Capa de compatibilidad: conserva el aspecto base que tenía Bootstrap 2.3
 *  2. Estilos propios del sitio (migrados del antiguo bootstrapwp.css)
 */

/* ========== 1. BASE (equivale a los valores que tenía Bootstrap 2.3) ========== */
:root {
  --bs-body-font-family: 'Open Sans', sans-serif;
  --bs-body-font-size: 14px;
  --bs-body-line-height: 1.43;
  --bs-body-color: #333;
  --bs-body-color-rgb: 51, 51, 51;
  --bs-body-bg: #f5f5f5;
  --bs-body-bg-rgb: 245, 245, 245;
  --bs-link-color: #08c;
  --bs-link-color-rgb: 0, 136, 204;
  --bs-link-hover-color: #005580;
  --bs-link-hover-color-rgb: 0, 85, 128;
  --bs-border-radius: 4px;
}
a { text-decoration: none; }
a:hover { text-decoration: underline; }
img { max-width: 100%; height: auto; }
p { margin: 0 0 10px; }
h1, h2, h3, h4, h5, h6 { margin: 10px 0; font-weight: bold; line-height: 20px; }
h1, h2, h3 { line-height: 40px; }
h1 { font-size: 32.5px; } h2 { font-size: 31.5px; } h3 { font-size: 24.5px; }
h4 { font-size: 19px; } h5 { font-size: 14px; } h6 { font-size: 11.9px; }
h1 small, h2 small, h3 small, h4 small, h5 small, h6 small { font-weight: normal; line-height: 1; color: #999; }
h1 small { font-size: 24.5px; } h2 small { font-size: 17.5px; } h3 small { font-size: 20px; font-weight: bold; color: #333; } h4 small { font-size: 14px; }
ul, ol { padding: 0; margin: 0 0 10px 25px; }
.navbar-nav, .nav, .pagination, .breadcrumb, .dropdown-menu, .list-unstyled { margin-left: 0; }
blockquote { padding: 0 0 0 15px; margin: 0 0 20px; border-left: 5px solid #eee; }
blockquote p { margin-bottom: 0; font-size: 17.5px; font-weight: 300; line-height: 1.25; }
blockquote small { display: block; line-height: 25px; color: #999; text-align: right; font-size: 13px; }
blockquote small::before { content: '\2014 \00A0'; }
blockquote.pull-right, blockquote.float-end { float: right; padding-right: 15px; padding-left: 0; border-right: 5px solid #eee; border-left: 0; }
small { font-size: 85%; }
cite { font-style: normal; }
.page-header { padding-bottom: 9px; margin: 30px 0; border-bottom: 1px solid #eee; }
.row { --bs-gutter-x: 20px; }
/* Anchos del container originales de BS2 (724 / 940 / 1170 px de contenido).
   Se suman 20px porque en BS5 el container lleva padding de gutter (10px por lado). */
.container { --bs-gutter-x: 20px; }
@media (min-width: 768px)  { .container { max-width: 744px; } }
@media (min-width: 992px)  { .container { max-width: 960px; } }
@media (min-width: 1200px) { .container { max-width: 1190px; } }

/* Componentes retirados en Bootstrap 5 que el tema sigue usando */
.hero-unit {
  padding: 60px 40px 60px 40px;
  margin-bottom: 0px;
  font-size: 18px;
  font-weight: 200;
  line-height: 30px;
  color: inherit;
  background-color: #eeeeee;
        text-shadow: 0 2px 3px #fff;
        background: url(../img/shattered.jpg) repeat;
        border-bottom: 1px solid #D4D6D6;
}
.hero-unit h1 {
  margin-bottom: 0;
  font-size: 60px;
  line-height: 1;
  color: inherit;
  letter-spacing: -1px;
}
.hero-unit li {
  line-height: 30px;
}

/* ========== Navbar (Bootstrap 5) — réplica del aspecto original ========== */
.navbar-relative-top {
  position: relative; margin-bottom: 0; border-radius: 0;
  min-height: 4rem; padding: 1rem 20px 0;
  background: url(../img/office.png) repeat; border-bottom: 1px solid #252525;
  box-shadow: 0 10px 10px rgba(0,0,0,.1);
  --bs-navbar-color: #999; --bs-navbar-hover-color: #fff; --bs-navbar-active-color: #fff;
}
.navbar-relative-top .navbar-brand {
  padding: 10px 20px; margin: 0 0 0 -20px; font-size: 22px; font-weight: 700;
  color: #999; text-shadow: 0 -1px 0 rgba(0,0,0,.25);
}
.navbar-relative-top .navbar-brand:hover { color: #fff; text-decoration: none; }
.navbar-relative-top .navbar-nav > li > a {
  padding: 10px 15px; color: #999; font-size: 11px; text-transform: uppercase;
  text-decoration: none; text-shadow: 0 -1px 0 rgba(0,0,0,.25);
}
.navbar-relative-top .navbar-nav > li > a:hover,
.navbar-relative-top .navbar-nav > li > a:focus,
.navbar-relative-top .navbar-nav > li:hover > a { color: #fff; background: transparent; }
.navbar-relative-top .navbar-nav > .current-menu-item > a,
.navbar-relative-top .navbar-nav > .current-page-ancestor > a,
.navbar-relative-top .navbar-nav > .current-menu-ancestor > a { color: #fff; background-color: #111; }

/* Submenús: negro translúcido, texto en una línea (ancho = contenido) */
.navbar .dropdown-menu {
  min-width: 160px; width: max-content; max-width: none; padding: 0; margin: 0;
  background: rgba(17,17,17,.9); border: 1px solid rgba(0,0,0,.2); border-radius: 1px;
  box-shadow: 0 5px 10px rgba(0,0,0,.2); background-clip: padding-box;
}
.navbar .dropdown-menu > li { border-bottom: 1px solid #111; }
.navbar .dropdown-menu > li > a,
.navbar .dropdown-menu .dropdown-item {
  display: block; padding: 10px 20px; clear: both; font-size: 13px; font-style: italic;
  font-weight: normal; line-height: 20px; color: #999; white-space: nowrap;
  border-bottom: 1px solid #333; text-shadow: 0 1px 0 #000; text-transform: none; background: transparent;
}
.navbar .dropdown-menu > li > a:hover,
.navbar .dropdown-menu > li > a:focus,
.navbar .dropdown-menu .dropdown-item:hover,
.navbar .dropdown-submenu:hover > a {
  text-decoration: none; color: #fff; background-color: #363636;
  background-image: linear-gradient(to bottom, #444, #222);
}
.dropdown-submenu { position: relative; }
.dropdown-submenu > .dropdown-menu { top: 0; left: 100%; margin-top: -1px; margin-left: -1px; border-radius: 0 1px 1px 1px; }
.dropdown-submenu > a::after {
  content: " "; float: right; width: 0; height: 0; margin-top: 5px; margin-right: -10px;
  border: solid transparent; border-width: 5px 0 5px 5px; border-left-color: #ccc;
}
.dropdown-submenu:hover > a::after { border-left-color: #fff; }
.navbar .dropdown-toggle::after { border-top-color: currentColor; margin-left: .4em; vertical-align: .2em; }

@media (min-width: 992px) {
  /* Submenús al pasar el cursor (y con el teclado) */
  .navbar-nav .dropdown:hover > .dropdown-menu,
  .navbar-nav .dropdown:focus-within > .dropdown-menu,
  #fifth-menu .dropdown:hover > .dropdown-menu,
  #fifth-menu .dropdown:focus-within > .dropdown-menu,
  .dropdown-submenu:hover > .dropdown-menu,
  .dropdown-submenu:focus-within > .dropdown-menu { display: block; }
}
@media (max-width: 991.98px) {
  /* En móvil los submenús se muestran desplegados (sin JS) */
  .navbar .dropdown-menu { display: block; position: static; width: auto; border: 0; background: transparent; box-shadow: none; padding: 0 0 0 1rem; }
  .navbar .dropdown-menu > li > a { white-space: normal; }
  .dropdown-submenu > a::after { display: none; }
}

/* ========== 2. ESTILOS PROPIOS DEL SITIO ========== */
/* Custom BootstrapWP Overrides and Styles
----------------------------------------------------------------------------------------*/
/********************************************************/
/**Overriding some defaults from the Bootstrap defaults to improve/fix integration with WordPress
-------------------------------------------------- */
#content-wrapper {
  padding: 40px 0 20px 0;
}
.widget h2 img {
  display: inline;
}
@media (max-width: 480px) {
ul#footer-menu li a {font-size: 10px !important; }
li#menu-item-1656 a {display: none;visibility: hidden;}
li#menu-item-1656 {background: none !important;}
.navbar-brand {font-size: 20px !important;}
.hero-unit {padding: 20px;}
.hero-unit img {margin-top: 10px;border-radius: 6px;}
/* (móvil) los encabezados conservan la línea ornamental, igual que en escritorio */
.btn-dark {width: 100%;display: block;padding-left: 0;padding-right: 0;}
#homepage h4 {text-align: center;}
.content ul li, .content ol li {margin-left: 0 !important; list-style-type: none;}
.content ul {margin-left: 0;}
.dl-horizontal {margin-left: 10px;}
.dropdown-menu .dropdown-item {white-space: normal;}
h3 {font-size: 21px;}
.blogging img.alignleft, .blogging img.alignright {
	float:none !important;
	display:block !important;
	margin:0 auto 20px auto !important;
		
	}
}

/* Blog Post Specific Items
----------------------------------------------------------------------------------------*/
p.meta {
  font-size: 12px;
  line-height: 20px;
  color: #999;
}
/* Sidebar
----------------------------------------------------------------------------------------*/
div.widget {
  margin-bottom: 0px;
}
h4.widget-title {
  font-weight: bold;
  line-height: 18px;
  color: #999;
  text-transform: uppercase;
  margin-top: 9px;
}
.widget ul {
  margin: 0 0 9px 0;
}
.widget ul li {
  list-style: none;
}
.widget ul > li > a {
  display: block;
  padding: 3px 15px;
  margin-left: -15px;
  margin-right: -15px;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
}
.widget ul > li > a:hover {
  color: white;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
  background-color: #08C;
}
/* Post Styles
----------------------------------------------------------------------------------------*/
.entry-meta {
  clear: both;
  display: block;
}
.format-gallery .gallery-thumb {
  float: left;
  margin: 0 1em 0 0;
}
/* Search Form Styles
----------------------------------------------------------------------------------------*/
#searchform {
  display: inline-block;
  margin-bottom: 0;
  vertical-align: middle;
}
#searchform input#s {
  padding-left: 4px;
  padding-right: 4px;
  margin-right: 4px;
  margin-bottom: 0;
  background-color: #FFFFFF;
  border: 1px solid #CCCCCC;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
  display: inline;
  float: left;
}
#searchsubmit {
  display: inline-block;
  padding: 5px 10px 6px;
  font-size: 14px;
  line-height: normal;
  color: #333;
  float: left;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
  background-color: #E6E6E6;
  background-image: linear-gradient(#ffffff, #ffffff 25%, #e6e6e6);
  background-repeat: no-repeat;
  border: 1px solid #CCC;
  border-bottom-color: #BBB;
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  cursor: pointer;
  transition: 0.1s linear all;
  -webkit-appearance: button;
}
/* Comment Styles
----------------------------------------------------------------------------------------*/
li.bypostauthor {
  border: 1px solid;
  border-color: #08C;
  display: block;
}
#respond {
  margin-top: 20px;
}
ol.commentlist {
  margin: 0 0 15px !important;
}
ol.commentlist img.avatar {
  margin: 8px 10px 0 0;
  padding: 4px;
  line-height: 1;
  border: 1px solid #DDD;
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
  float: left;
}
ol.commentlist li {
  margin: 0;
  padding: 8px 0 8px 64px;
  list-style: none;
  overflow: hidden;
  position: relative;
}
ol.commentlist li header {
  margin: 0;
  line-height: 1.5em;
}
ol.commentlist li article nav {
  float: right;
}
ol.commentlist li ul {
  margin: 8px 0 0 !important;
}
ol.commentlist li li {
  border: 0;
  margin: 0 0 0 68px !important;
  padding: 0 0 8px;
}
ol.comment-list li .comment-content p {
  margin: 0 0 10px !important;
}
ol.comment-list li p.meta {
  font-weight: normal;
  background: transparent;
  padding: 0;
  font-style: italic;
  font-size: 0.9em;
  margin: 0 0 10px !important;
}
ol.comment-list li p.meta strong {
  font-weight: bold;
}
#respond {
  margin-bottom: 15px;
}
#respond input.text,
#respond select,
#respond textarea,
.comment-form-author input,
.comment-form-email input,
.comment-form-url input {
  border: 1px solid #eee;
  background: #f6f6f6;
  color: #777;
  font-size: 1em;
  line-height: 1em;
  padding: 0.375em;
  width: 50%;
  margin: 0 4px 0 0;
  outline: 0;
  display: block;
}
#respond input.text:focus,
#respond select:focus,
#respond textarea:focus,
.comment-form-author input:focus,
.comment-form-email input:focus,
.comment-form-url input:focus,
.widget_search input#s:focus {
  border: 1px solid #ccc;
}
.borderradius #respond input.text,
.borderradius #respond select,
.borderradius #respond textarea,
.borderradius .comment-form-author input,
.borderradius .comment-form-email input,
.borderradius .comment-form-url input,
.borderradius .widget_search input#s {
  border-radius: 0.5em;
}
#respond textarea {
  width: 98%;
  margin-right: 0;
}
#respond label {
  font-size: 1em;
  font-weight: bold;
  display: inline;
}
.button,
#submit,
.widget_search #searchsubmit,
 {
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  color: white;
  padding: 5px 10px 5px;
  font-size: 14px;
  line-height: 20px;
  text-align: center;
  border: 1px solid #CCC;
  border-bottom-color: #BBB;
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  cursor: pointer;
  background-color: #363636;
  background-image: linear-gradient(top, #444, #222);
  background-repeat: repeat-x;
  border-color: #04C #04C #002A80;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.reply .comment-reply-link {background: url(../img/reply-icon.png) no-repeat; width: 22px;height: 22px;display: block;}


.button:hover,
#submit:hover,
.widget_search #searchsubmit:hover,
 {
  color: #333333;
  text-decoration: none;
  background-color: #e6e6e6;
  background-position: 0 -15px;
  transition: background-position 0.1s linear;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  color: #ffffff;
  background-color: #222;
}
.button:active,
#submit:active,
.widget_search #searchsubmit:active,
.button.green:active {
  position: relative;
  top: 1px;
}
/* Image Alignment
----------------------------------------------------------------------------------------*/
img.alignnone {
  display: block;
  position: relative;
}
img.alignright {
  float: right;
  
  display: inline;
}
img.alignleft {
  float: left;
  display: inline;
}
img.aligncenter {
  display: block;
  text-align: center;
  margin: auto;
}


.blogging img.alignright {
  float: right;
  margin: 10px 0 10px 15px;
  display: inline;
}
.blogging img.alignleft {
  float: left;
  margin: 10px 15px 10px 0;
  display: inline;
}





/* Caption Styling
----------------------------------------------------------------------------------------*/
.wp-caption {
  padding: 9px;
  max-width: 100%;
  height: auto;
  width: auto; /* ie8 */
}
.wp-caption p.wp-caption-text {
  font-size: 14px;
  line-height: 24px;
  padding: 5px 0;
  color: #999;
  
}
.gallery-caption {
  padding: 9px;
}
/* Sticky Post Styles
----------------------------------------------------------------------------------------*/
.sticky {
  padding: 4px;
  border: 1px solid #DDD;
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075);
}
/* Custom Elements Added
----------------------------------------------------------------------------------------*/
.masthead h2 {
  margin-bottom: 0;
  font-size: 60px;
  line-height: 1;
  letter-spacing: -1px;
  text-align: center;
  margin-bottom: 9px;
}
/* Enter your custom styles here */

.bg-books {
background: url(../img/white_wall_hash.png) repeat;

}


.col-md-2 p.books {font-size: 11px;
    margin: 0;
    text-align: center;
    text-transform: uppercase;
text-shadow: 0 2px 3px #efefef;
padding-bottom: 10px;
padding-top: 10px;
font-weight: bold;
  }

#footer, #footer-home {background: #eee;padding: 50px 30px 0; margin-top: 7em;border-top: 1px solid #E6E6E6;}
#footer-home {margin-top: 0;padding-top: 90px;}

.hero-unit img {margin-top: 10px;}

.white-frame {border: 10px solid #fff;}
.margen-izq {padding-left: 15px;}

.bg-line {height: 30px;width: auto;background: url(../img/bg-diagonal.png) repeat;margin:0 2em;}

#footer p, #footer-home p {color:#777;text-shadow:0 1px 0 #FFF;}


#homepage {background: url("../img/stripe.png");color: #ddd;margin-top: 7em;padding-bottom: 3em;}
#homepage .page-header {border-bottom: 0;}
#homepage h4 {text-shadow: 0 2px 3px #222;color: #f5f5f5;margin: 1em 0 0 0;text-transform: uppercase;font-size: 14px;padding-top: 1em;}
#homepage h4.seccion-blog {text-align: center;font-size: 20px;}

#homepage blockquote {margin-top: 6em;}

#homepage blockquote p {text-align: right;}
#homepage a {color: #ddd;}
#homepage h4 small {margin-top: .4em;font-size: 14px;text-transform: none;}

.seccion-libros {padding:15px;margin: 10px 0;
border: 1px solid #ddd; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);border-radius: 7px
}

.seccion-libros img {margin: 6px 15px 5px 0}
.seccion-libros h3 {font-size: 18.5px;margin-top: 0;
max-width: 570px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;}

.book-card a {display:block;text-decoration: none;color: #333;text-align: center;}
.post-title {text-align: center;margin: 5em 0;}
.content p, .content ul li, .content ol li  {font-size: 18px;line-height: 30px;margin-bottom: 15px;}
.content ul li, .content ol li {margin-left: 1.5em;}
.content ul {margin-bottom: 1.8em;}
.meta-info {margin-top: 1em;}
.meta-info p {font-size: 14px;line-height: 15px;padding-left: 5px;}
.margin-arriba {margin-top: 5em;}
.margin-abajo {margin-bottom: 2.5em;text-align: center;}
.margin-arriba-image {margin-top: 1.5em;}
.margin-text-top {margin-top: 2.3em;}
.centrar-texto {text-align: center;}


.content-post {margin-bottom:3rem;}
.content-post a, .seccion-libros a {color: #333;}
.bg-seccion-libros {height: 355px; background: url('../img/rojas-soriano-argentina-bg.jpg') no-repeat center -40px #333;background-blend-mode: overlay;position: relative;}
.bg-morelos {background: url('../img/foto-morelos.jpg') no-repeat right top #333;background-blend-mode: overlay;}
.bg-coleg-sociologia {background: url('../img/colegio-sociologia.jpg') no-repeat center center #333;background-blend-mode: overlay;height: 240px}
.bg-cereso {background: url('../img/cereso.jpg') no-repeat center center #333;background-blend-mode: overlay;height: 275px}
.bg-reconocimiento {background: url('../img/reconocimiento-fcpys-rojas-soriano.jpg') no-repeat center center #333;background-blend-mode: overlay;}
.bg-excelsior {background: url('../img/excelsior-rojas-soriano.jpg') no-repeat left center #333;background-blend-mode: overlay;}
.bg-estudiantes-fcpys {background: url('../img/rojas-soriano-estudianes-fcpys.jpg') no-repeat center center #333;background-blend-mode: overlay;height: 260px}
.bg-durango {background: url('../img/rojas-soriano-en-durango.jpg') no-repeat #333;background-blend-mode: overlay;height: 240px}
.bg-cuba-grupo {background: url('../img/rojas-soriano-cuba-foto-grupo.jpg') no-repeat center 0 #333;background-blend-mode: overlay;height: 260px}
.bg-entrevista-reporteros {background: url('../img/entrevista-reporteros-rojas-soriano.jpg') no-repeat center 0 #333;background-blend-mode: overlay;height: 280px}
.bg-educacion-cuba {background: url('../img/cuba-rojas-soriano.jpg') no-repeat center 0 #333;background-blend-mode: overlay;height: 260px}
.bg-examen-profesional {background: url('../img/examen-profesional-rojas-soriano.jpg') no-repeat center left #333;background-blend-mode: overlay;height: 355px;position: relative;}
.bg-entrevista-oriente-cuba {background: url('../img/oriente-cuba-secciones-rojas-soriano.jpg') no-repeat center center #333;background-blend-mode: overlay;height: 280px;}
.description-foto {position: absolute; bottom: 0;right: 0; background: rgba(51, 51, 51, 0.8);color: #999;font-size: 12px;padding: 2px 6px;font-style: italic;text-shadow:0 2px 3px #000000;
  /* For IE 8*/
  -ms-filter: 'progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)';

}

.bq-soriano {margin-top: 2em;}
#comments {margin-top: 6em;}

span.wpcf7-form-control-wrap, span.wpcf7-form-control-wrap, .wpcf7-submit {float: right; clear: both;}
#contacto-formulario p {clear: both;}

.wpcf7-textarea {width: 355px;}
.wpcf7-submit {background-color: #363636;
    background-image: linear-gradient(to bottom, #444444, #222222);
    background-repeat: repeat-x;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    color: #FFFFFF;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
border-radius: 3px 3px 3px 3px;
    font-size: 11.9px;
    padding: 2px 10px;
}

.texto {margin-top: 3em;}
.post-buton-redes {line-height:28px;}
.button-whats-twitter {display:inline;}
.button-whats-twitter a {
	line-height:28px;color: #FFF;font-size: 10px;font-weight:700;padding: 3px 7px;;margin:0;border-radius:7%;
}

.button-whats-twitter a:hover {
	text-decoration:none;
} 

#section-new {margin-bottom: 1em;text-align: center;}
.lomasnuevo {position: relative;}
.lomasnuevo h4 {margin-top: 0;}
.lomasnuevo h4 a {display: block;color: #ddd;padding: 10px;font-size: 16px;background: #333;text-shadow:0 2px 3px #222;font-weight: normal;font-style: italic;}
.lomasnuevo h4 a:hover {text-decoration: none;color: #fff;}

.tag-new {position: absolute;top:0;left: 0px;color:#888;background: #eee;border-right: 1px solid #ddd;border-bottom: 1px solid #ddd;padding: 2px 4px;font-size: 8px;border-radius: 0px 0 4px 0;}

.mbottom {margin-bottom: 3em;}

/*Fix caption align */
.aligncenter, div.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignright { float: right;}
.alignleft { float: left }
.alignimgleft {margin-left: -100px;}
.alignimgright {margin-right: -100px;}




#menu-secondary, #third-menu, #fourth-menu {list-style-type: none;margin: 5px 0 2em 0;padding: 0;background: #f5f5f5;text-shadow:0 2px 3px #FFFFFF;}
#menu-secondary li, #third-menu li, #fourth-menu li {border-bottom: 1px solid #e5e5e5;border-top: 1px solid #fff;margin-bottom: 0;}
#menu-secondary li:first-child {border-top:none;}
#menu-secondary a, #third-menu a, #fourth-menu a {color: #333;display: block;text-decoration: none;padding: 10px;font-style: italic;font-size: 16px;line-height: 22px;text-shadow:0 1px 1px #FFF;}
#menu-secondary a:hover {background: #f0f0f0;}

#third-menu li:first-child {border-top:none;}
#third-menu a:hover {background: #f0f0f0;}
#fourth-menu li:first-child {border-top:none;}
#fourth-menu a:hover {background: #f0f0f0;}




.alignmenuleft {margin-left: -125px;margin-right: 4em;}
.minor-margin {margin-right: 1em}
#third-menu li.current-menu-item {background: #f0f0f0;}
#fourth-menu li.current-menu-item {background: #f0f0f0;}
#menu-secondary li.current-menu-item {background: #ededed;}
#extractos blockquote {
    font-family:georgia, serif;
    line-height:1.2;

    text-align:center;
    padding:24px 60px;
    margin-bottom:18px;
    border:solid 1px rgb(221, 221, 221);
    position:relative;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
}


#extractos blockquote p {font-size: 20px;text-shadow:0 1px 0 #eee;}

#extractos blockquote:before,
#extractos blockquote:after {
    position:absolute;
    width:48px;
    height:48px;
    content:".";
    font-size:0;
}
 
#extractos blockquote:before {
    background-image:url('../img/open-quote.png');
    top:0;
    left:0;
}
 
#extractos blockquote:after {
    background-image:url('../img/close-quote.png');
    bottom:0;
    right:0;
}

.pagina
{
  color:#f5f5f5;
  background:#b9b9b9;
  position:absolute;
  top:0;
  right:0;
  font-family:'Open Sans',sans-serif;
  font-size:13px;
  text-shadow:0 1px 0 #c5c5c5;
  min-width:48px;
}

.ext-heading
{
  font-weight:400;
  font-size:26px;
  line-height:30px;
  margin-top:5em;
}

.mtop {margin-top: 2em;}
.citas-libros a {color: #333;font-size: 20px;font-weight: normal;background: #eee;display: block;padding: 10px;font-style: italic;text-shadow:0 1px 1px #FFFFFF;border: 1px solid #DDDDDD;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);text-decoration: none !important;}
.citas-libros a:hover {text-decoration: none;background: #f5f5f5;}

.flecha {font-size: 25px;width: 48px;border: 1px solid #ddd;text-align: center;color: #b9b9b9;padding-bottom: 5px;}
.flecha:hover {background: #b9b9b9;color: #f5f5f5}
.imagenquote {border-radius: 42px;margin-left: 20px;margin-bottom: 5px;}
.biografia-home p {padding-left: 10px;}
.archive-meta {margin-top: -10px;margin-bottom: 3em;}

 
blockquote#quote-footer {position: relative;margin-top: 1em !important;}

blockquote#quote-footer p {margin-left: 45px;}
 blockquote#quote-footer:before {position:absolute;
    width:48px;
    height:48px;
    content:".";
    font-size:0;}

 blockquote#quote-footer:before {
    background-image:url('../img/open-quote-extractos.png');
    top:0;
    left:0;
}

.reflexiones {
background: url("../img/angulo.png") no-repeat scroll right center #999999;
    color: #FFFFFF;
    font-size: 11px;
    font-weight: normal;
    font-style: normal;
    height: 30px;
    left: 0;
    padding-left: 10px;
    padding-right: 25px;
    padding-top: 10px;
    position: absolute;
    text-shadow: none;
    text-transform: uppercase;
    top: 0;


}

.tiled-gallery .gallery-row {margin-left: auto;margin-right: auto;}

.page-links {font-size: 18px;text-align: center;margin: 2em auto;width: 100%}
.page-links a {background: #333; color: #ddd !important;display: inline;padding: 5px 10px;border-radius: 13px 13px 13px 13px;text-decoration: none !important}
.page-links a:hover {text-decoration: none; background: #999;}
.page-links p {font-size: 16px;}

.post-title h1, .ornamento {background: url("../img/ornamento.png") no-repeat 50% 0;}
.ornamento {height: 40px;}
.florish {background: url("../img/florish.png") no-repeat 50% 0;height: 40px;margin-bottom: 1em;}



.post-title h1 span {background: #f5f5f5; padding: 0 10px}


#main-menu .current-menu-item a, #main-menu .current-page-ancestor a, #main-menu .current-post-parent a {color: #fff;}

.transparencia {background: none repeat scroll 0 0 rgba(51, 51, 51, 0.9);
    bottom: 0;
    color: #DDDDDD;
    cursor: pointer;
    display: block;
    height: auto !important;
    left: 0;
    min-height: 40px;
    position: absolute;
    width: 100%; 
  /* For IE 8*/
  -ms-filter: 'progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000, endColorstr=#99000000)';
}

.transparencia h5 {
font-size: 11px;
    text-shadow: 0 2px 3px #111;
    text-transform: uppercase;
  }
.automargin {min-height: 40px; 
height:auto !important; 
height: 40px; }
.content-transp {position: relative;}
.top-color {color:#777;font-size: 12px;}
.no-margin {margin-top: 0;}

/* ------------------------------------------------------------
  Site Map Styles
------------------------------------------------------------ */

#primaryNav ol, ul {list-style-type: none; }


#primaryNav li {
  width:25%;
}

#primaryNav li ul li {
  width:100% !important;
}

#primaryNav.col1 li { width:99.9%; }
#primaryNav.col2 li { width:50.0%; }
#primaryNav.col3 li { width:33.3%; }
#primaryNav.col4 li { width:25%; }
#primaryNav.col5 li { width:20.0%; }
#primaryNav.col6 li { width:16.6%; }
#primaryNav.col7 li { width:14.2%; }
#primaryNav.col8 li { width:12.5%; }
#primaryNav.col9 li { width:11.1%; }
#primaryNav.col10 li { width:10.0%; }




/* -------- Top Level --------- */

#primaryNav {
  margin: 0;
  float: left;
  width: 100%;
}
#primaryNav #home {
  display: block;
  float: none;
  background: url('../img/L1-left.png') center bottom no-repeat #f5f5f5;
  position: relative;
  z-index: 2;
  padding: 0 0 30px 0;
}
#primaryNav li {
  float: left;
  background: url('../img/L1-center.png') center top no-repeat;
  padding: 30px 0;
  margin-top: -30px;
}
#primaryNav li a {
  margin: 0 20px 0 0;
  padding: 10px 0;
  display: block;
  font-size: 14px;
  font-weight: normal;
  text-align: center;
  color: #ddd;  
  background: #333;
  border: 1px solid #ddd;
  
}

#primaryNav li a:hover {
text-decoration: none;

}

#primaryNav li:last-child a.last-one {
margin-right: 0;

}

#primaryNav ul.last-one li a {
margin-right: 0;

}



#primaryNav li a:hover {
  background-color: #222;
  border-color: #222;
}



#primaryNav li:last-child {
  background: url('../img/L1-right.png') center top no-repeat;
}


#primaryNav a:link:before, #primaryNav a:visited:before, #utilityNav a:link:before, #utilityNav a:visited:before {
  content: " "attr(title)" ";
  display: block;
  text-transform: uppercase;
  font-size: 10px;
  margin-bottom: 5px;
  word-wrap: break-word;
}



#primaryNav li a:link:before,
#primaryNav li a:visited:before {
  color: #999;
}

/* -------- Second Level --------- */

#primaryNav li li {
  width: 100%;
  clear: left;
  margin-top: 0;
  padding: 10px 0 0 0;
  background: url('../img/vertical-line.png') center bottom repeat-y;
}
#primaryNav li li a {
  background: #eee;
  border-color: #ddd;
  color:#333;
  font-weight: normal;
}
#primaryNav li li a:hover {
  border-color: #e3e3e3;
  background-color: #e3e3e3;
  text-decoration: none;
}
#primaryNav li li:first-child {
  padding-top: 30px;
}
#primaryNav li li:last-child {
  background: url('../img/vertical-line.png') center bottom repeat-y;
}
#primaryNav li li a:link:before,
#primaryNav li li a:visited:before {
  color: #8faf5c;
}

/* -------- Third Level --------- */

#primaryNav li li ul {
  margin: 10px 0 0 0;
  width: 100%;
  float: right;
  padding: 9px 0 10px 0;
  background: #f5f5f5 url('../img/L3-ul-top.png') center top no-repeat;
}
#primaryNav li li li {
  background: url('../img/L3-center.png') left center no-repeat;
  padding: 5px 0;
}
#primaryNav li li li a {
  background-color: #eee;
  border-color: #ddd;
  font-size: 12px;
  padding: 5px 0;
  width: 80%;
  float: right;
}
#primaryNav li li li a:hover {
  border-color: #e3e3e3;
  background-color: #e3e3e3;
}
#primaryNav li li li:first-child {
  padding: 15px 0 5px 0;
  background: url('../img/L3-li-top.png') left center no-repeat;
}
#primaryNav li li li:last-child {
  background: url('../img/L3-bottom.png') left center no-repeat;
}
#primaryNav li li li a:link:before,
#primaryNav li li li a:visited:before {
  color: #ccae14;
  font-size: 9px;
}


/* ------------------------------------------------------------
  Utility Navigation
------------------------------------------------------------ */

#utilityNav {
  float: right;
  max-width: 70%;
  margin-right: 0px;

}
#utilityNav li {
  float: left;
  margin-bottom: 10px;
}
#utilityNav li a {
  margin: 0 10px 0 0;
  padding: 5px 10px;
  display: block; 
  border: 1px solid #ddd;
  font-size: 12px;
  font-weight: normal;
  text-align: center;
  color: #ddd;
  background: #333;
}

#utilityNav li:last-child a {margin-right: 0;}

#utilityNav li a:hover {
  background-color: #222;
  border-color: #222;
  text-decoration: none;
}
#utilityNav li a:link:before,
#utilityNav li a:visited:before {
  color: #999;
  font-size: 9px;
  margin-bottom: 3px;
}

ul#footer-menu {border-top: 1px solid #FFFFFF;
    margin: 0 0 5px;
    padding-top: 1.5em;
    text-align: center;}
ul#footer-menu li {text-transform: uppercase;display: inline;background: url(../img/menu_bullet.png) no-repeat scroll right center transparent;padding: 0 0 0 5px;}
ul#footer-menu li a {color:#777;margin-right: 15px;font-size: 12px;text-shadow:0 1px 0 #FFF;font-weight: bold;}
ul#footer-menu li:last-child {background: none;}
.lineblank {background: none repeat scroll 0 0 #DDDDDD;
    height: 1px;
    margin-top: 5em;
    width: auto;}

h4#bio-head {font-size:14.5px;margin-top: .5em;text-align: center;text-transform: uppercase;margin-left: 2em;margin-bottom: 0;font-weight: normal;text-shadow:0 1px 1px #FFFFFF;}
.mar2em {margin-left: 2em;margin-bottom: 1em;}

.slider {
  margin: 50px 0 0 1.5em;
  
  height: 395px; /* Update to your slider height */
  
  position: relative;
  overflow: hidden;
  padding: 0;
}

.slider img {
  position: absolute;
  top: 0;
  left: 0; margin-top: 1em;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}
.slider img.active { opacity: 1; }

h4#bio-head small {font-size: 10px;}
.post-buton-redes {margin-top: 5em;border-top: 1px solid #ddd;background: #efefef;padding: 2em 0 5em 0;}

.content a, .hero-unit a {text-decoration: underline;color: #333;font-style: italic;}

.content a:hover {color: #000;}

.alert-download {background-color: #DDDDDD;
    border-color: #999999;
    color: #333333;
    text-align: center;
    text-shadow: 0 1px 1px #FFFFFF;}

li#menu-item-1658 {background: none transparent !important;} /* este hack solo funciona agregando transparent */
li#menu-item-3926 {background: none transparent !important;} /* este hack solo funciona agregando transparent */
li#menu-item-3925 {padding-left: 8px !important;}
li#menu-item-3926 a {margin-right: 0 !important;}




ul#fifth-menu {margin: 0 10px 0 0;padding-top: .6rem;}
ul#fifth-menu li {background: url("../img/menu_bullet_clair.png") no-repeat right center; display: block;padding: 0 0 4px 15px;float: right;line-height: 15px;}
ul#fifth-menu li a {color:#ADADAD;margin-right: 15px;font-size: 10px;text-shadow:0 1px 0 #000;text-transform: uppercase;font-weight: bold;letter-spacing: .2px;}
ul#fifth-menu li:last-child {border-left: none;}
ul#fifth-menu li:first-child {background: none;}
ul#fifth-menu li a:hover {text-decoration: none;color: #fff;}

li#menu-item-3370 {background: none;}
li#menu-item-3369 {background: none !important}

#wrapper-fifth-menu {background: url(../img/office2.png);min-height: 2.4rem;}

#menu-secondary ul.sub-menu {margin-bottom:15px;margin-left:0}
#menu-secondary ul.sub-menu li {border-bottom:none;margin-left:17px;}

/* activate menu hover dropdown*/
/* (hover de menús: ver sección Navbar arriba) */

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.video-container iframe,  
.video-container object,  
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.entry-content img, 
.entry-content iframe, 
.entry-content object, 
.entry-content embed {
        max-width: 100%;
}

.ajuste-caja {height:150px;padding: 5px;}
.page h4 {margin-top: 40px;line-height: normal;}
.mt {margin-top:2.5rem}
.mr {margin-right:2rem;}
.mb {margin-bottom:1.5rem;}
.page-title {margin-top:2rem;}
/* Carrusel de libros (Bootstrap 5): flechas oscuras sobre fondo claro */
#myCarousel .carousel-control-prev, #myCarousel .carousel-control-next { width: 5%; }
#myCarousel .carousel-control-prev-icon, #myCarousel .carousel-control-next-icon { filter: invert(1) grayscale(1); }

/* Alertas / paginación / comentarios */
.alert-dismissible .btn-close { padding: 1rem; }



/* Comentarios: sustituto mínimo de .media de Bootstrap 2 */
.media-body { overflow: hidden; }
.media-heading { margin: 0 0 5px; }
.media > .float-start { margin-right: 10px; }
.media-list { margin-left: 0; list-style: none; }

/* Columna lateral flotante de page.php (antes span3 = 220px en la rejilla fija de BS2) */
.alignmenuleft { width: 220px; }

/* Footer menu en horizontal (.nav-link de BS5 es display:block, por eso se apilaba) */
ul#footer-menu { list-style: none; padding-left: 0; }
ul#footer-menu li { display: inline-block; }
ul#footer-menu li a { display: inline; padding: 0; }

/* Libros en móvil: scroll horizontal con snap, 2 portadas visibles e imbricadas */
.libros-track {
  display: flex; overflow-x: auto; gap: 0; padding: 10px 24px 20px;
  scroll-snap-type: x mandatory; scroll-padding-left: 24px;
  -webkit-overflow-scrolling: touch; scrollbar-width: thin; scrollbar-color: #888 #ddd;
}
.libros-track::-webkit-scrollbar { height: 6px; }
.libros-track::-webkit-scrollbar-track { background: #ddd; border-radius: 3px; margin: 0 24px; }
.libros-track::-webkit-scrollbar-thumb { background: #888; border-radius: 3px; }
.libros-track__item {
  flex: 0 0 52%; margin-right: -5%;           /* 7% de traslape entre portadas */
  scroll-snap-align: start; position: relative;
}
.libros-track__item:last-child { margin-right: 0; }
.libros-track__item img { width: 100%; border-radius: 6px; box-shadow: -4px 2px 10px rgba(0,0,0,.35); border: 3px solid #fff; background: #fff; }
.libros-track p.books { font-size: 11px; margin: 0; padding: 8px 12px 0; text-align: center; text-transform: uppercase; font-weight: bold; }

/* Portadas del mismo tamaño (recorta con cover si la imagen original tiene otra proporción) */
.book-card img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; object-position: top center; }

/* Fotos de la home en móvil: tira de miniaturas (se ven completas, sin recorte) + visor al tocar */
.fotos-track {
  display: flex; align-items: center; gap: 6px; overflow-x: auto; margin: 15px 0 20px; padding: 0 0 12px;
  scroll-snap-type: x proximity; -webkit-overflow-scrolling: touch;
  scrollbar-width: thin; scrollbar-color: #888 #ddd; clear: both;
}
.fotos-track::-webkit-scrollbar { height: 6px; }
.fotos-track::-webkit-scrollbar-track { background: #ddd; border-radius: 3px; }
.fotos-track::-webkit-scrollbar-thumb { background: #888; border-radius: 3px; }
.fotos-track__item { flex: 0 0 auto; padding: 0; border: 0; background: none; scroll-snap-align: start; cursor: zoom-in; }
.fotos-track__item img {
  display: block; height: 130px; width: auto; max-width: none;
  border-radius: 5px; background: #ddd;
}
.fotos-visor .modal-content { background: rgba(0,0,0,.92); border: 0; border-radius: 0; align-items: center; justify-content: center; }
.fotos-visor #fotosVisorImg { max-width: 100%; max-height: 90vh; width: auto; height: auto; object-fit: contain; }
.fotos-visor__close { position: absolute; top: 12px; right: 12px; z-index: 3; }
.fotos-visor__nav {
  position: absolute; top: 50%; transform: translateY(-50%); z-index: 3;
  width: 44px; height: 64px; border: 0; background: rgba(0,0,0,.35); color: #fff; font-size: 36px; line-height: 1;
}
.fotos-visor__prev { left: 0; border-radius: 0 6px 6px 0; }
.fotos-visor__next { right: 0; border-radius: 6px 0 0 6px; }
.fotos-visor__count {
  position: absolute; top: 14px; left: 14px; z-index: 3;
  padding: 3px 10px; border-radius: 12px; background: rgba(0,0,0,.45);
  color: #fff; font-size: 13px; line-height: 20px; letter-spacing: .5px;
}

/* Libros relacionados (single.php): portadas del mismo tamaño */
img.portada-relacionada { display: block; width: 100%; height: auto; aspect-ratio: 2 / 3; object-fit: fill; /* fill = estira; cambiar a cover para recortar */ }

/* Columnas "auto" (.col / .col-md): evitar que una imagen grande ensanche su columna y deje las demás más angostas */
.row > .col, .row > .col-md { min-width: 0; }

/* Portada en el sidebar de single.php: ocupa todo el ancho del recuadro (mismo efecto que las relacionadas) */
img.portada-sidebar { margin-bottom: 12px; }

/* Sidebar de las páginas de libro */
.sidebar-libro { background: #f0f0f0; border: 1px solid #f0f0f0; border-radius: 6px; }

/* Libros relacionados (single.php)
   Móvil: tira deslizable, 2 portadas visibles y traslapadas (igual que el carrusel del home) */
.otros-libros {
  display: flex; overflow-x: auto; padding: 10px 24px 20px;
  scroll-snap-type: x mandatory; scroll-padding-left: 24px; -webkit-overflow-scrolling: touch;
  scrollbar-width: thin; scrollbar-color: #888 #ddd;
}
.otros-libros::-webkit-scrollbar { height: 6px; }
.otros-libros::-webkit-scrollbar-track { background: #ddd; border-radius: 3px; margin: 0 24px; }
.otros-libros::-webkit-scrollbar-thumb { background: #888; border-radius: 3px; }
.otros-libros__item { flex: 0 0 52%; margin-right: -9%; margin-bottom: 0; scroll-snap-align: start; position: relative; }
.otros-libros__item:last-child { margin-right: 0; }
.otros-libros__item img { border: 3px solid #fff; border-radius: 6px; box-shadow: -4px 2px 10px rgba(0,0,0,.35); background: #fff; }
/* Escritorio: fila normal de 5 portadas iguales */
@media (min-width: 768px) {
  .otros-libros { overflow: visible; padding: 0; gap: 20px; }
  .otros-libros__item { flex: 1 1 0; min-width: 0; margin: 0 0 2.5em; }
  .otros-libros__item img { border: 0; border-radius: 0; box-shadow: none; background: none; }
}

/* Foto del footer: borde degradado de gris fuerte a gris claro */
.imagenquote {
  border: 3px solid transparent;
  background: linear-gradient(135deg, #444 0%, #999 50%, #e2e2e2 100%) border-box;
  padding: 0;
}

/* Bio de la home: texto recortado con degradado + botón ">" (móvil y escritorio) */
.texto-colapsable.collapse:not(.show) {
  display: block; height: 5.5em; overflow: hidden;
  -webkit-mask-image: linear-gradient(to bottom, #000 35%, transparent 100%);
          mask-image: linear-gradient(to bottom, #000 35%, transparent 100%);
}
.btn-mas {
  display: block; margin: 0 auto 20px; padding: 6px 18px; border: 1px solid #bbb; border-radius: 20px;
  background: rgba(255,255,255,.7); color: #333; font-size: 14px; line-height: 20px; cursor: pointer;
}
.btn-mas .bi { display: inline-block; margin-left: 4px; font-size: 12px; transition: transform .25s; }
.btn-mas:not(.collapsed) .bi { transform: rotate(90deg); }      /* ">" abierto = "v" */
.btn-mas.collapsed .btn-mas__menos, .btn-mas:not(.collapsed) .btn-mas__mas { display: none; }

/* Botón flotante "subir" */
.btn-subir {
  position: fixed; right: 20px; bottom: 20px; z-index: 1030;
  width: 44px; height: 44px; padding: 0; border: 1px solid rgba(255,255,255,.25); border-radius: 50%;
  background: rgba(34,34,34,.85); color: #fff; font-size: 18px; line-height: 1;
  box-shadow: 0 2px 8px rgba(0,0,0,.35); cursor: pointer;
  opacity: 0; visibility: hidden; transform: translateY(10px);
  transition: opacity .25s, transform .25s, visibility .25s, background-color .15s;
}
.btn-subir.visible { opacity: 1; visibility: visible; transform: none; }
.btn-subir:hover, .btn-subir:focus-visible { background: #000; }
@media print { .btn-subir { display: none; } }

/* Slider del hero: al centrar verticalmente, el margen superior de 50px (alineación antigua) ya no hace falta */
@media (min-width: 768px) { .hero-unit .slider { margin-top: 0; } }

/* Slider con .shadow: se deja margen interno para que el contenedor (overflow:hidden) no recorte la sombra */
.slider { height: 430px; }
.slider img { top: 12px; left: 12px; margin-top: 0; max-width: calc(100% - 24px); }
@media (min-width: 768px) { .hero-unit .slider { margin-top: 0; } }

/* Blog (home): botón "Ver más artículos" con el mismo negro de los bloques */
.lomasnuevo-mas { margin-top: 0; }
.btn-mas-articulos {
  display: block; width: 30%; min-width: 220px; margin: 24px auto 0; padding: 10px; border: 0; border-radius: 20px; background: #333; color: #ddd;
  font-size: 16px; font-style: italic; text-align: center; text-shadow: 0 2px 3px #222; cursor: pointer;
}
.btn-mas-articulos:hover, .btn-mas-articulos:focus-visible { color: #fff; }
.btn-mas-articulos .bi { display: inline-block; margin-left: 4px; font-size: 13px; transition: transform .25s; }
.btn-mas-articulos:not(.collapsed) .bi { transform: rotate(180deg); }
.btn-mas-articulos.collapsed .mas-articulos__menos, .btn-mas-articulos:not(.collapsed) .mas-articulos__mas { display: none; }
@media (max-width: 575.98px) { .btn-mas-articulos { width: 80%; } }  /* en pantallas muy angostas, 50% queda muy chico */

/* category-libros.php: portada de la card, tamaño medio y uniforme (2:3), a la izquierda del extracto */
.seccion-libros img.portada-card {
  width: 150px; height: auto; aspect-ratio: 2 / 3; object-fit: fill; /* fill = estira; cover = recorta */
  float: left; margin: 6px 15px 5px 0;
}
@media (max-width: 575.98px) { .seccion-libros img.portada-card { width: 110px; } }

/* category-libros.php: toda la card es un enlace (stretched-link) */
.seccion-libros { position: relative; transition: box-shadow .2s, transform .2s; }
.seccion-libros:hover { box-shadow: 0 4px 12px rgba(0,0,0,.2); transform: translateY(-2px); }
.seccion-libros .edit-link { position: relative; z-index: 2; }

/* category-libros.php: más aire dentro de las cards */
.seccion-libros { padding: 24px; margin: 12px 0; }
.seccion-libros h3 { margin-bottom: 16px; }
.seccion-libros img.portada-card { margin: 4px 22px 8px 0; }
.seccion-libros p { line-height: 1.6; margin-bottom: 12px; }

/* category-libros.php: portadas en blanco y negro; a color al pasar el cursor por la card */
.seccion-libros img.portada-card { filter: grayscale(100%); transition: filter .35s ease; }
.seccion-libros:hover img.portada-card,
.seccion-libros:focus-within img.portada-card { filter: grayscale(0); }
@media (hover: none) { .seccion-libros img.portada-card { filter: none; } }  /* táctil: no hay hover, se muestran a color */

/* category-libros.php: sin subrayado en el título al pasar el cursor */
.seccion-libros a, .seccion-libros a:hover, .seccion-libros a:focus { text-decoration: none; }

/* Videoteca: sección negra a todo lo ancho con el reproductor centrado (estilo YouTube) */
.video-stage { background: #000; }
.video-stage__inner { max-width: 1100px; margin: 0 auto; }
.video-stage__frame { position: relative; aspect-ratio: 16 / 9; background: #000; }   /* proporción 16:9 en cualquier ancho */
.video-stage__frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

/* Videoteca: "Otros videos" al final del post (mismo estilo oscuro que los bloques del Blog del home) */
.otros-videos { margin: 5em 0 1em; clear: both; }
.otros-videos__titulo { text-align: left; font-size: 20px; line-height: 30px; margin: 0 0 16px; }
.otros-videos__lista { list-style: none; margin: 0; padding: 0; }
.otros-videos__lista li { margin: 0 0 10px; }
.otros-videos__lista a {
  display: flex; align-items: center; gap: 10px; padding: 6px 0;
  font-size: 16px; text-decoration: none; color: #000;
}
.otros-videos__lista a:hover, .otros-videos__lista a:focus-visible { text-decoration: underline; color: #000; }
.otros-videos__lista .bi { font-size: 20px; flex: 0 0 auto; font-style: normal; }

/* Videoteca: título y subtítulo más pequeños */
.titulo-video { font-size: 1.3rem; line-height: 1.3; }
.titulo-video small { font-size: 1.1rem; line-height: 1.3; }

/* Otros videos: línea central después del título, hasta el final del bloque */
.otros-videos__titulo { display: flex; align-items: center; gap: 16px; }
.otros-videos__titulo::after { content: ""; flex: 1 1 auto; height: 1px; background: #000; }

/* Compartir: etiqueta + tres botones circulares */
.compartir { display: flex; align-items: center; justify-content: center; gap: 14px; }
.compartir__etiqueta { font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: #555; }
.compartir__lista { list-style: none; margin: 0; padding: 0; display: flex; gap: 10px; }
.compartir__btn {
  display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px;
  border-radius: 50%; background: #000; color: #fff; font-size: 14px; font-style: normal;
  text-decoration: none; transition: background-color .2s, transform .2s;
}
.compartir__btn:hover, .compartir__btn:focus-visible { color: #fff; transform: translateY(-2px); text-decoration: none; }
.compartir__btn--facebook:hover, .compartir__btn--facebook:focus-visible { background: #1877f2; }
.compartir__btn--whatsapp:hover, .compartir__btn--whatsapp:focus-visible { background: #25d366; }
.compartir__btn--x:hover, .compartir__btn--x:focus-visible { background: #333; }

/* Compartir: sin fondo gris y alineado a la derecha */
.post-buton-redes { background: none; }
.compartir { justify-content: flex-end; }

/* Compartir en el sidebar de libros: centrado bajo la portada */
.compartir-sidebar .compartir { justify-content: center; gap: 10px; }
.compartir-sidebar .compartir__etiqueta { font-size: 11px; }

/* Compartir en el sidebar de libros: solo iconos, centrados (reglas reforzadas) */
.compartir-sidebar .compartir { display: flex; justify-content: center; gap: 0; }
.compartir-sidebar .compartir__etiqueta { display: none; }
.compartir-sidebar .compartir__lista { display: flex; justify-content: center; gap: 10px; margin: 0; padding: 0; list-style: none; }
.compartir-sidebar .compartir__lista li { margin: 0; padding: 0; background: none; list-style: none; }
.compartir-sidebar .compartir__btn { width: 28px; height: 28px; margin: 0; padding: 0; background-color: #555; color: #fff !important; }
.compartir-sidebar .compartir__btn .bi { color: #fff !important; font-size: 14px; line-height: 1; }
.compartir-sidebar .compartir__btn--facebook:hover { background-color: #1877f2; }
.compartir-sidebar .compartir__btn--whatsapp:hover { background-color: #25d366; }
.compartir-sidebar .compartir__btn--x:hover { background-color: #333; }

/* Otros títulos (libros): línea horizontal después del título */
.page-header--linea { border-bottom: 0; padding-bottom: 0; margin-bottom: 16px; }
.page-header--linea h3 { display: flex; align-items: center; gap: 16px; margin: 0; }
.page-header--linea h3::after { content: ""; flex: 1 1 auto; height: 1px; background: #000; }

/* Sidebar de libros: separador de doble línea (gris + blanca debajo), como el del footer */
.sidebar-libro hr { border: 0; height: 0; margin: 1.2em 0; opacity: 1; border-top: 1px solid #d9d9d9; border-bottom: 1px solid #fff; background: none; }

/* Compatibilidad: botones de descarga guardados en posts antiguos con clases de Bootstrap 2
   (<button class="btn btn-large btn-block btn-inverse"><i class="icon-download-alt icon-white">) */
.btn-inverse { --bs-btn-color: #fff; --bs-btn-bg: #212529; --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #424649; --bs-btn-hover-border-color: #373b3e;
  --bs-btn-active-color: #fff; --bs-btn-active-bg: #4d5154; --bs-btn-active-border-color: #373b3e;
  box-shadow: 0 .5rem 1rem rgba(0,0,0,.15); }
.btn-block { display: block; width: 100%; }
.btn-large { padding: .5rem 1rem; font-size: 1rem; border-radius: var(--bs-border-radius-lg); }
.content [class^="icon-"], .content [class*=" icon-"] { display: inline-block; font-family: "bootstrap-icons" !important; font-style: normal; font-weight: normal; line-height: 1; vertical-align: -.125em; }
.content [class^="icon-download"]::before, .content [class*=" icon-download"]::before { content: "\f30a"; }

/* Botones de descarga de posts antiguos: mismo aspecto que los nuevos (icono junto al texto, sin saltos de línea de wpautop) */
.content .btn br { display: none; }
.content .btn p { margin: 0; display: inline; }
.content a:has(> .btn), .content a:has(> .btn):hover { text-decoration: none; }
.content .btn-inverse { display: block; width: 100%; line-height: 1.5; text-align: center; }
.content .btn-inverse [class^="icon-"] { margin-right: .25rem; }

/* Botones de descarga: btn-lg (padding e icono grandes) pero con el texto en tamaño normal */
.btn-dark.btn-lg { --bs-btn-font-size: 1rem; }
.btn-dark.btn-lg .bi-download, .content .btn-inverse [class^="icon-"] { font-size: 1rem; vertical-align: -.125em; margin-right: .2rem; }

/* Breadcrumb: enlaces en gris oscuro */
.breadcrumb a, .breadcrumb a:visited { color: #333; }
.breadcrumb a:hover, .breadcrumb a:focus-visible { color: #333; }

/* Home: línea horizontal después del título principal */
.rsoriano-title { display: flex; align-items: center; gap: 20px; margin-bottom: .7em !important;letter-spacing:.5px !important;font-size:1.35rem !important;text-transform:uppercase;}
.rsoriano-title::after { content: ""; flex: 1 0 2rem; height: 1px; background: #000; }

/* Home: las negritas dentro del hero (el hero usa font-weight 200, y "bolder" no llegaba a 700) */
.hero-unit strong, .hero-unit b { font-weight: 600; }

/* Breadcrumb (Bootstrap 5) */
.breadcrumb { --bs-breadcrumb-divider-color: #ccc; --bs-breadcrumb-item-active-color: #999; padding: 8px 15px; margin: 0 0 20px; background-color: #f5f5f5; border-radius: 4px; }

/* Paginación (Bootstrap 5): cuadros oscuros como antes */
.pagination { --bs-pagination-padding-x: 14px; --bs-pagination-padding-y: 10px; --bs-pagination-font-size: 15px;
  --bs-pagination-color: #fff; --bs-pagination-bg: #333; --bs-pagination-border-width: 0; --bs-pagination-border-radius: 0;
  --bs-pagination-hover-color: #fff; --bs-pagination-hover-bg: #888; --bs-pagination-focus-color: #fff; --bs-pagination-focus-bg: #888;
  --bs-pagination-active-color: #fff; --bs-pagination-active-bg: #888; --bs-pagination-disabled-color: #fff; --bs-pagination-disabled-bg: #333;
  gap: 4px; margin: 4rem auto; padding: 0; }
.pagination .page-link { text-decoration: none; font-style: normal; }

/* Compatibilidad: iconos Font Awesome (menús guardados en WordPress) mostrados con Bootstrap Icons */
.fa-brands, .fab, .fa { display: inline-block; font-family: "bootstrap-icons" !important; font-style: normal; font-weight: normal !important; line-height: 1; vertical-align: -.125em; }
.fa-facebook::before, .fa-facebook-f::before { content: "\f344"; }
.fa-youtube::before { content: "\f62b"; }
.fa-twitter::before { content: "\f5ef"; }
.fa-x-twitter::before { content: "\f8db"; }
.fa-instagram::before { content: "\f437"; }
.fa-linkedin::before, .fa-linkedin-in::before { content: "\f472"; }
.fa-whatsapp::before { content: "\f618"; }
.fa-tiktok::before { content: "\f6cc"; }
.fa-telegram::before { content: "\f5b3"; }
.fa-envelope::before { content: "\f32f"; }

/* Footer: icono de Academia.edu (SVG propio; no existe en Bootstrap Icons) */
.icono-academia { display: inline-block; width: 1rem; height: 1rem; margin-left: .3rem; color: #ADADAD; vertical-align: -.125em; }
a:hover .icono-academia { color: #777; }

/* Footer en móvil: más espacio para el menú (menos padding lateral y márgenes más cortos) */
@media (max-width: 575.98px) {
  #footer, #footer-home { padding-left: 12px; padding-right: 12px; }
  ul#footer-menu { display: flex; flex-wrap: wrap; justify-content: center; row-gap: 6px; }
  ul#footer-menu li { padding-left: 4px; }
  ul#footer-menu li a { margin-right: 8px; }
}

/* Footer en móvil: el elemento oculto (Mapa del sitio) también desaparece, para que no deje un hueco */
@media (max-width: 480px) {
  ul#footer-menu li#menu-item-1656 { display: none; }
}
@media (max-width: 480px) {
  ul#footer-menu li a { font-size: 11.5px !important; }
}

/* Libros: título y subtítulo más pequeños en móvil */
@media (max-width: 767.98px) {
  .post-title--libro h1, .post-title--libro h1 small { font-size: 23px; line-height: 1.3; }
  .post-title--libro h1 small, .post-title--libro h1 small * { font-size: 20px !important; line-height: 1.3 !important; }
}

/* Navbar en móvil/tablet (menú colapsado): padding simétrico para que marca y botón queden centrados verticalmente */
@media (max-width: 991.98px) {
  .navbar-relative-top { padding-top: .5rem; padding-bottom: .5rem; }
}
