/* Basic */

*,
*:before,
*:after {
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  -o-box-sizing: content-box;
  -ms-box-sizing: content-box;
  box-sizing: content-box;
}

body {
  font-size: 15pt;
  font-family: sans-serif;
  /*background-color: #e3e9dc;*/
  font-family: Source Sans Pro, Arial, Helvetica, sans-serif;
  color: #000000;
  letter-spacing: -1px;
  /*background-image: url("../images/banner_0002.jpg");*/
  background-position: center center;
  /*background-size:contain;*/
  background-repeat: no-repeat;
}

h1,
h2,
h3,
h4 {
  color: #007897;
  font-weight: normal;
}

h1,
h2 {
  /*text-transform: lowercase;*/
}

h2 {
  font-size: 1.6em;
  letter-spacing: -1px;
  margin-bottom: 0.5em;
  /*text-transform:lowercase;*/
}

h3,
h4 {
  color: #000000;
  margin-bottom: 0.5em;
}

h3 {
  font-size: 1.2em;
  margin-bottom: 0.8em;
}

h4 {
  font-size: 1em;
}

p,
ul {
  margin-bottom: 1.25em;
}

p {
  line-height: 25px;
}

strong {
  color: #000000;
  font-weight: 800;
}

img.left {
  float: left;
  margin: 2px 1.25em 0 0;
}

img.top {
  margin: 4px 0 2.25em 0;
}

ul {
  padding: 0.25em 0 0 0;
}

a {
  color: #5d93a2;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

* > p:last-child {
  margin-bottom: 0 !important;
}

/* Reusable */

article.blog-post {
  position: relative;
}

article.blog-post .comments {
  position: absolute;
  top: 0;
  right: 0;
  height: 32px;
  line-height: 24px;
  padding-left: 40px;
  background: url("images/icon-bubble.png") no-repeat;
}

ul.small-image-list li {
  overflow: hidden;
  margin-bottom: 1.5em;
}

ul.big-image-list li {
  overflow: hidden;
  margin-bottom: 2em;
}

ul.link-list li {
  border-top: solid 1px #ced0b7;
  padding: 0.75em 0 0 0;
  margin: 0.75em 0 0 0;
}

ul.link-list li:first-child {
  padding-top: 0;
  margin-top: 0;
  border-top: 0;
}

.button {
  display: inline-block;
  padding: 15px 25px 15px 25px;
  background-color: #007b9d;
  background-image: -moz-linear-gradient(top, #008dad, #007b9d);
  background-image: -webkit-linear-gradient(top, #008dad, #007b9d);
  background-image: -webkit-gradient(
    linear,
    0% 0%,
    0% 100%,
    from(#008dad),
    to(#007b9d)
  );
  background-image: -ms-linear-gradient(top, #008dad, #007b9d);
  background-image: -o-linear-gradient(top, #008dad, #007b9d);
  background-image: linear-gradient(top, #008dad, #007b9d);
  border-radius: 10px;
  /*text-transform: lowercase;*/
  text-decoration: none;
  color: #fff;
  font-size: 1.2em;
  letter-spacing: -1px;
  border: solid 1px #006e8b;
  box-shadow: inset 0px 0px 0px 1px #18a8c8;
}

.button:hover {
  background-color: #118eb1;
  background-image: -moz-linear-gradient(top, #1b9fbe, #118eb1);
  background-image: -webkit-linear-gradient(top, #1b9fbe, #118eb1);
  background-image: -webkit-gradient(
    linear,
    0% 0%,
    0% 100%,
    from(#1b9fbe),
    to(#118eb1)
  );
  background-image: -ms-linear-gradient(top, #1b9fbe, #118eb1);
  background-image: -o-linear-gradient(top, #1b9fbe, #118eb1);
  background-image: linear-gradient(top, #1b9fbe, #118eb1);
  box-shadow: inset 0px 0px 0px 1px #3ecceb;
}

#menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* items del menu */

#menu ul li {
  background-color: #034a7a;
}

/* enlaces del menu */

#menu ul a {
  display: block;
  color: #fff;
  text-decoration: none;
  font-weight: 400;
  font-size: 15px;
  padding: 10px;
  font-family: Source Sans Pro, Arial, Helvetica, sans-serif;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* items del menu */

#menu ul li {
  position: relative;
  float: left;
  margin: 0;
  padding: 0;
}

/* efecto al pasar el ratón por los items del menu */

#menu ul li:hover {
  background: #5b78a7;
}

/* menu desplegable */

#menu ul ul {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #eee;
  padding: 0;
}

/* items del menu desplegable */

#menu ul ul li {
  float: none;
  width: 150px;
}

/* enlaces de los items del menu desplegable */

#menu ul ul a {
  line-height: 120%;
  padding: 10px 15px;
}

/* items del menu desplegable al pasar el ratón */

#menu ul li:hover > ul {
  display: block;
}

ul.no-style, ol.no-style {
  list-style: none;
  padding: 0;
  margin: 0;
}

em, i {
  font-style: italic;
}
@media only screen and (max-width: 2560px) {
  /* Ajustes para pantallas más grandes */
  .mapa {
    width: 100px;
    margin-top: -15px;
    margin-left: 50px;
  }
}
/* Oculta submenús en móviles por defecto */
@media only screen and (max-width: 768px) {
  #menu ul ul {
    display: none;
  }

  /* Muestra solo el submenú activo */
  #menu li.active > ul {
    display: block;
  }
}
/* Ocultar submenús por defecto */
#menu ul ul {
  display: none;
  padding-left: 20px; /* Indentación para submenús */
}

/* Mostrar submenú en desktop al pasar el mouse */
@media(min-width: 769px) {
  #menu ul li:hover > ul {
    display: block;
    position: absolute;
    background: #eee;
    padding: 0;
    margin-top: 0;
    list-style: none;
  }
  
  #menu ul li {
    position: relative;
    float: left;
  }
}

/* En móvil, menú vertical */
@media(max-width: 768px) {
  #menu ul li {
    float: none;
  }
  
  /* Opcional: indicador + para menú con submenu */
  #menu ul li.has-submenu > a::after {
    content: " +";
    float: right;
  }
  #menu ul li.has-submenu.active > a::after {
    content: " -";
  }
}
