/* Tema Minino - Drupal 11 - réplica del diseño original Drupal 7 */
body {
  font-family: Georgia, "Times New Roman", Times, serif;
  color: #3B3B3B;
  background: #fff;
  margin: 0;
  line-height: 1.5;
}
.container { max-width: 1140px; margin: 0 auto; padding: 0 15px; }

/* Zona superior: solo el selector de idiomas, alineado a la derecha */
#zone-user { background: #fff; border-bottom: 1px solid #dbe0e5; }
#zone-user .container { display: flex; justify-content: flex-end; align-items: center; min-height: 32px; }
#zone-user ul { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; }
#zone-user li { margin-left: 10px; }
#zone-user a { color: #333; font-family: Arial, Helvetica, sans-serif; font-size: 13px; text-decoration: none; }
#zone-user a:hover { color: #4183B7; }
.language-switcher-language-url ul { display: flex; align-items: center; }
.language-switcher-language-url li { display: inline; padding: 0 8px; border-right: 1px solid #ccc; margin: 0; }
.language-switcher-language-url li.is-active a { font-weight: bold; color: #2A4B6B; }

/* Zona branding: logo a la izquierda + menú secundario con iconos a la derecha */
#zone-branding { background: #fff; padding: 10px 0; }
#zone-branding .container { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.branding { display: flex; align-items: center; }
.branding img { height: auto; max-height: 96px; width: auto; }
.site-name { margin-left: 10px; font-size: 1.4em; }
.site-name a { color: #2A4B6B; text-decoration: none; font-weight: bold; }
/* Iconos del menú secundario (iconsmenu.png, sprite de 60px) */
#block-secondarymenu ul { display: flex; }
#block-secondarymenu li { margin: 0; }
#block-secondarymenu a {
  background: url(../img/iconsmenu.png) no-repeat scroll 11px top transparent;
  display: block;
  height: 0;
  width: 60px;
  text-align: center;
  padding-top: 70px;
  margin-left: 30px;
  font-size: 13px;
  font-family: Arial;
  color: #333;
  text-decoration: none;
}
#block-secondarymenu li:nth-child(1) a { background-position: 10px 0; }   /* Descargas */
#block-secondarymenu li:nth-child(2) a { background-position: -122px 0; } /* FAQ */
#block-secondarymenu li:nth-child(3) a { background-position: -60px 0; }  /* Tour */


/* Barra de menú: gris #DBDEE3, como el original */
#zone-menu {
  background: #DBDEE3;
  height: 35px;
  line-height: 35px;
  margin-bottom: 5px;
}
#zone-menu ul { list-style: none; margin: 0; padding: 0; display: flex; }
#zone-menu li { margin: 0; }
#block-mainnav h2 { display: none; }
#zone-menu a {
  padding: 10px;
  text-shadow: 1px 1px white;
  color: #333;
  font-family: Arial, Helvetica, sans-serif;
  text-decoration: none;
  display: inline-block;
}
#zone-menu a:hover { background: #eaeaea; color: #000; }
#zone-menu a.is-active {
  background: #3E81B6;
  color: #fff;
  text-shadow: none;
  border-radius: 10px 10px 0 0;
  border-top: 1px solid #2A4B6B;
  border-left: 1px solid #2A4B6B;
  border-right: 1px solid #2A4B6B;
}

/* Zona header: slider + texto, fondo azul original (bg_bluez sobre #b7d0e4) */
#header {
  background: #b7d0e4 url(../img/bg_bluez.png) repeat-x 0 0;
  border-top: 1px solid #2a4b6b;
  border-bottom: 1px solid #36608a;
  padding: 15px 0;
}
.portada-slider { display: flex; gap: 25px; align-items: center; }
.portada-slider .slick-wrapper { flex: 2; min-width: 0; }
.portada-slider .aviso { flex: 1; min-width: 0; }
.aviso blockquote {
  font-family: Georgia, serif;
  font-size: 1em;
  font-style: italic;
  color: #fff;
  text-shadow: 2px 2px 2px #295C84;
  text-align: center;
  line-height: 1.25em;
  margin: 0 0 10px;
}
.aviso img { max-width: 100%; height: auto; }

/* Slides: vídeo + título a la derecha */
.video-slide { display: flex; align-items: center; gap: 25px; justify-content: center; }
.video-frame iframe { max-width: 100%; box-shadow: 0 2px 8px rgba(0,0,0,0.15); }
.video-info { text-align: left; max-width: 300px; }
.video-info h3 { margin: 0; font-size: 1.3em; color: #2A4B6B; }
.slick__arrow { text-align: center; margin-top: 10px; }
.slick__arrow button { background: #4183B7; color: #fff; border: 0; padding: 6px 14px; margin: 0 5px; cursor: pointer; border-radius: 3px; }
.slick__arrow button:hover { background: #2A4B6B; }
/* Pager del slider con la imagen original pager_sl.png */
.slick-dots { list-style: none; margin: 10px 0 0; padding: 0; text-align: center; }
.slick-dots li { display: inline-block; margin: 0 5px; }
.slick-dots li button {
  background: url(../img/pager_sl.png) no-repeat scroll -20px 0 transparent;
  width: 18px;
  height: 18px;
  text-indent: -999px;
  border: 0;
  cursor: pointer;
  overflow: hidden;
}
.slick-dots li.slick-active button { background-position: 0 0; }

/* Contenido */
#main { padding: 25px 0; }
#main .container { display: flex; gap: 25px; }
.content { flex: 1; }
.sidebar-first, .sidebar-second { width: 250px; flex-shrink: 0; }
h1, h2, h3, h4, h5, h6 { font-weight: bold; }
h2 { color: #444; font-size: 1.7em; border-bottom: 1px solid #ccc; padding-bottom: 5px; }
a { color: #4183B7; }
a:hover { color: #2A4B6B; }
.front h1#page-title { display: none; }

/* Footer: claro como el original */
.postscript { background: #f5f8fb; padding: 20px 0; }
.postscript .container { display: flex; gap: 25px; flex-wrap: wrap; }
.postscript > .container > div { flex: 1; min-width: 200px; }
#footer { background: #fff; color: #3B3B3B; border-top: 1px solid #dbe0e5; padding: 25px 0; margin-top: 30px; }
#footer .container { display: flex; gap: 25px; }
#footer a { color: #4183B7; }
#footer a:hover { color: #2A4B6B; }
#footer h2 { color: #444; font-size: 1.1em; border-bottom: 1px solid #ccc; padding-bottom: 5px; }
#footer .footer-first, #footer .footer-second { flex: 1; }

/* Ocultar títulos de página vacíos */
h1:empty { display: none; }

@media (max-width: 768px) {
  #main .container, #zone-branding .container, .postscript .container, #footer .container, .portada-slider, .video-slide { flex-direction: column; }
  .sidebar-first, .sidebar-second { width: auto; }
  #zone-menu ul { flex-direction: column; height: auto; }
  #zone-menu li { margin: 5px 0; }
  .video-info { text-align: center; max-width: none; }
  #zone-user .container { justify-content: center; }
}
