@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Lusitana:wght@400;700&&display=swap");
/*Estilos general*/
.admin {
  top: 0;
  z-index: 222;
  background: rgb(0, 0, 0);
  position: fixed;
  width: 100%;
  font-size: 0.9rem;
  line-height: normal;
  padding: 7px;
}
.admin a {
  color: #d80269;
  background: #0C0C0D;
}
.admin a:focus, .admin a:hover {
  color: #999;
  text-decoration: none;
}
.admin .close {
  color: #d80269;
}
.admin .p-2 {
  padding: 0.2rem !important !important;
}
.admin .img-circle-admin {
  max-height: 25px;
  padding: 2px;
  background: #d80269;
  border-radius: 50%;
}
.admin .cerrar {
  position: fixed;
  z-index: 99999;
  top: 0;
  right: 10px;
  color: #F6F592;
}
.admin #cerrar {
  color: #d80269;
  margin-top: 1px;
}
.admin .usuario_admin {
  display: flex;
  justify-content: center;
}
.admin .usuario_admin > img {
  margin-left: 1.1rem;
}

@media (max-width: 768px) {
  .editar_admin em {
    display: none;
  }
}
.header.panel {
  border-bottom: 1px solid #fff;
}

em.ayto {
  font-style: normal;
}

@media (max-width: 500px) {
  em.ayto {
    display: none;
  }
}
.header {
  pointer-events: initial;
  padding: 0;
  background-color: #0C0C0D;
  color: #fff;
}
.header #cabecera-ayto {
  padding: 0;
  z-index: 9999;
  margin: auto;
}
.header .cabecera_madrid {
  min-height: 50px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: auto;
}
.header .cabecera_madrid .titulositio,
.header .cabecera_madrid .logomadrid {
  align-self: center;
  flex: 0 1 auto;
  line-height: 1rem;
  font-family: Lato, sans-serif;
}
@media (max-width: 374px) {
  .header .cabecera_madrid .titulositio {
    display: none;
  }
}
.header .cabecera_madrid .logomadrid {
  font-size: 1.3rem;
}
.header .cabecera_madrid a {
  font-family: "Lato", sans-serif;
  color: #fff;
  font-weight: normal;
  font-size: 15px;
  text-decoration: none;
  font-size: clamp(0.8rem, 2vw, 15px);
}
.header .cabecera_madrid a h1 {
  font-size: 15px;
  font-weight: normal;
  text-transform: initial;
}
.header .cabecera_madrid a:hover, .header .cabecera_madrid a:focus {
  text-decoration: underline;
}
@media (max-width: 414px) {
  .header .cabecera_madrid {
    justify-content: center;
  }
}

/* Media Queries */
@media (max-width: 768px) {
  .cabecera_madrid {
    padding: 0 1rem !important;
    min-height: 30px;
    align-items: center;
  }
  .cabecera_madrid a {
    font-size: 0.75rem;
  }
  .cabecera_madrid a h1 {
    font-size: 0.75rem;
  }
  .cabecera_madrid a span {
    font-size: 1rem;
  }
  .cabecera_madrid a span.aytomadrid {
    font-size: 0.75rem;
  }
  .icon-madrid-ayto {
    margin-left: 0.4rem;
  }
  .header .titulositio {
    margin-right: 0.5rem;
    width: 100%;
    text-align: left;
  }
  .container-fluid.header {
    overflow: hidden;
  }
}
@media (max-width: 415px) {
  .icon-madrid-ayto {
    margin-left: 0;
  }
  span.aytomadrid {
    display: none;
  }
}
.dcha {
  display: inline-flex;
}
@media (max-width: 991px) {
  .dcha {
    width: 100%;
    justify-content: end;
  }
}

.offcanvas {
  background: #0C0C0D;
}

.cerrar_menu {
  font-size: 1rem;
  text-decoration: none;
  color: #fff;
}
.cerrar_menu:hover, .cerrar_menu:focus {
  color: #fff;
  text-decoration: underline;
}

@media (max-width: 991px) {
  .sticky {
    max-height: 100vh; /* Limita la altura máxima al 100% del viewport */
    overflow-y: auto;
  }
}
/* Animación suave para el offcanvas */
.offcanvas-start {
  transition: transform 0.3s ease-in-out;
}

.offcanvas-end {
  transition: transform 0.3s ease-in-out;
}

@media (max-width: 991px) {
  .dropdown-item {
    margin: 4px 0;
    white-space: normal;
    position: relative;
    line-height: normal;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .dropdown-item::after {
    content: "";
    position: absolute;
    right: 2px;
    width: 2px;
    height: 1px;
    top: 49%;
    background-color: #fff;
  }
}
.navbar-brand {
  display: none;
  transition: all 0.3s;
  margin-right: 10px;
}
@media (max-width: 991px) {
  .navbar-brand {
    display: block !important;
  }
}
.navbar-brand img.escritorio {
  display: none;
}
@media only screen and (min-width: 992px) {
  .navbar-brand img.escritorio {
    display: block;
    margin-top: -1rem;
  }
  .navbar-brand img.responsive {
    display: none;
  }
}
.navbar-brand img {
  transition: all, 0.6s;
  bottom: 0;
  width: 200px;
}
@media only screen and (min-width: 375px) and (max-width: 575px) {
  .navbar-brand img {
    width: 280px;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .navbar-brand img {
    width: 300px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .navbar-brand img {
    width: 450px;
  }
}

#mainNavbar .js--cal.calendario, #mainNavbar .js--search.busqueda {
  margin: 0;
  color: #0C0C0D;
  font-family: "Roboto", sans-serif;
  font-size: 1.1rem;
  font-weight: bold;
  background-color: transparent;
  padding: 5px;
  width: 35px;
  height: 35px;
  border-radius: 8px;
}
@media (min-width: 992px) {
  #mainNavbar .js--cal.calendario, #mainNavbar .js--search.busqueda {
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
#mainNavbar .js--cal.calendario img.calendario-ico, #mainNavbar .js--cal.calendario img.lupa-ico, #mainNavbar .js--search.busqueda img.calendario-ico, #mainNavbar .js--search.busqueda img.lupa-ico {
  width: 25px;
}
@media (max-width: 992px) {
  #mainNavbar .js--cal.calendario img.calendario-ico, #mainNavbar .js--cal.calendario img.lupa-ico, #mainNavbar .js--search.busqueda img.calendario-ico, #mainNavbar .js--search.busqueda img.lupa-ico {
    margin-bottom: 5px;
  }
}
#mainNavbar .js--cal.calendario:hover, #mainNavbar .js--cal.calendario:focus, #mainNavbar .js--search.busqueda:hover, #mainNavbar .js--search.busqueda:focus {
  background-color: #0C0C0D;
}
#mainNavbar .js--cal.calendario:hover img.calendario-ico, #mainNavbar .js--cal.calendario:hover img.lupa-ico, #mainNavbar .js--cal.calendario:focus img.calendario-ico, #mainNavbar .js--cal.calendario:focus img.lupa-ico, #mainNavbar .js--search.busqueda:hover img.calendario-ico, #mainNavbar .js--search.busqueda:hover img.lupa-ico, #mainNavbar .js--search.busqueda:focus img.calendario-ico, #mainNavbar .js--search.busqueda:focus img.lupa-ico {
  filter: invert(1);
}

.ui-datepicker .ui-datepicker-next span, .ui-datepicker .ui-datepicker-prev span {
  color: transparent;
}

.navbar-brand.active {
  display: block;
  transform: translateX(0);
  animation: scrollLeft 0.5s;
}

@keyframes scrollLeft {
  0% {
    opacity: 0;
    transform: translateY(50%);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
ul.idiomas {
  display: flex;
  list-style: none;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 0;
  padding-right: 5px;
}
ul.idiomas li {
  line-height: 1.1em;
  padding: 0 10px;
  position: relative;
}
ul.idiomas li span {
  color: #fff;
  text-decoration: none;
  font-family: "roboto";
}
ul.idiomas li a {
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  font-family: "roboto";
}
ul.idiomas li + li:before {
  content: "";
  width: 1.5px;
  height: 100%;
  display: block;
  position: absolute;
  left: 0;
  background-color: white;
  mix-blend-mode: difference;
  transform: rotate(20deg);
}
ul.idiomas li.active {
  font-weight: 300;
}
ul.idiomas li.active span {
  border-bottom: 1px solid #fff;
}

@media (max-width: 991px) {
  .bg--navigation, .bg--navigation.show {
    display: none;
  }
}
@media (min-width: 992px) {
  .bg--navigation {
    top: 118px;
    left: 0;
    width: 100%;
    height: calc(100vh - 84px);
    position: absolute;
    z-index: -1;
    -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    filter: alpha(opacity=0);
    -moz-opacity: 0;
    -khtml-opacity: 0;
    opacity: 0;
    transition: all, 0.6s;
  }
  .bg--navigation::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, #000000 0%, rgba(0, 0, 0, 0.8) 55%, rgba(0, 0, 0, 0) 100%);
    z-index: -2;
  }
  .bg--navigation::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    filter: blur(15px);
    opacity: 0.5;
    z-index: -1;
  }
  .bg--navigation.show {
    display: block;
    opacity: 1;
  }
  .bg--navigation.active {
    z-index: 88;
  }
  .bg--navigation.addtop {
    top: 73px;
    position: fixed;
  }
}
/* Logo estilo */
.logo-navbar {
  height: 40px;
}

/* Botón de entradas personalizado */
.entradas-btn {
  color: #fff;
  background-color: transparent;
}

#mainNavbar {
  color: #fff;
}
@media (max-width: 991px) {
  #mainNavbar {
    backdrop-filter: blur(4px);
  }
  #mainNavbar .navbar-toggler-icon {
    filter: invert(1) brightness(100);
  }
  #mainNavbar.ishome img.responsive {
    display: none;
  }
  #mainNavbar.ishome.sticky img.responsive {
    display: block;
  }
  #mainNavbar.ishome .navbar-toggler-icon {
    filter: invert(1);
  }
}
#mainNavbar .dropdown-menu,
#mainNavbar .navbar-brand,
#mainNavbar .navbar-nav .nav-link {
  color: #fff;
  font-family: "Lato", sans-serif;
  font-size: 1.1rem;
  font-weight: bold;
}
@media (min-width: 992px) {
  #mainNavbar .dropdown-menu,
  #mainNavbar .navbar-brand,
  #mainNavbar .navbar-nav .nav-link {
    white-space: nowrap;
    padding-top: 3px;
    padding-bottom: 3px;
  }
}
@media (min-width: 992px) {
  #mainNavbar .dropdown-menu:hover, #mainNavbar .dropdown-menu:focus,
  #mainNavbar .navbar-brand:hover,
  #mainNavbar .navbar-brand:focus,
  #mainNavbar .navbar-nav .nav-link:hover,
  #mainNavbar .navbar-nav .nav-link:focus {
    text-shadow: 0 -1px #000, 1px 0 #000, 0 1px #000, -1px 0 #0C0C0D;
    color: #ebae36 !important;
  }
}
#mainNavbar .dropdown-menu .nav-link {
  font-weight: normal;
}
@media (max-width: 991px) {
  #mainNavbar .dropdown-menu {
    background-color: rgba(255, 255, 255, 0.1) !important;
    padding-left: 8px;
    padding-right: 4px;
    margin-top: -2px;
    position: relative;
    z-index: 11;
    border-radius: 0;
    width: 100%;
  }
  #mainNavbar .dropdown-menu li:last-child a {
    border-bottom: 0;
  }
  #mainNavbar .dropdown-menu2 {
    margin-top: 0px;
    background-color: transparent !important;
  }
}
@media (max-width: 991px) {
  #mainNavbar .navbar-nav .nav-link {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
}
#mainNavbar .navbar-nav {
  gap: 10px;
}
#mainNavbar .navbar-nav a {
  font-family: "Roboto", sans-serif;
}
@media (max-width: 991px) {
  #mainNavbar .navbar-nav {
    width: 100%;
    padding: 1rem;
  }
}
#mainNavbar .entradas-btn {
  color: #0C0C0D;
  border: 1px solid #0C0C0D;
}
@media (min-width: 992px) {
  #mainNavbar .entradas-btn {
    color: #fff;
    border: 1px solid #fff;
  }
}
#mainNavbar .entradas-btn:hover, #mainNavbar .entradas-btn:focus {
  border: 1px solid #fff;
  background-color: #fff;
  color: #0C0C0D;
}
#mainNavbar .js--search, #mainNavbar .js--cal {
  filter: invert(1);
}
#mainNavbar .js--search:hover, #mainNavbar .js--search:focus, #mainNavbar .js--cal:hover, #mainNavbar .js--cal:focus {
  background-color: #fff;
  text-shadow: 1px 1px 2px #fff;
}
#mainNavbar:hover, #mainNavbar:focus-within {
  background-color: #0C0C0D;
  color: #fff;
}
@media (max-width: 991px) {
  #mainNavbar:hover .navbar-brand img, #mainNavbar:hover .navbar-toggler-icon, #mainNavbar:hover .entradas-btn, #mainNavbar:focus-within .navbar-brand img, #mainNavbar:focus-within .navbar-toggler-icon, #mainNavbar:focus-within .entradas-btn {
    filter: brightness(100);
  }
  #mainNavbar:hover .entradas-btn, #mainNavbar:focus-within .entradas-btn {
    border-color: #0C0C0D;
    filter: invert(1);
    font-size: 1rem;
  }
}
@media (max-width: 1199px) {
  #mainNavbar ul.redes-menu li.nav-item-redes, #mainNavbar ul.transversal li.nav-item-redes {
    display: none;
  }
}
#mainNavbar ul.redes-menu, #mainNavbar ul.transversal {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  margin: 0;
  gap: 7px;
}
@media (max-width: 991px) {
  #mainNavbar ul.redes-menu, #mainNavbar ul.transversal {
    display: none;
  }
}
#mainNavbar ul.redes-menu li.nav-item-redes a, #mainNavbar ul.transversal li.nav-item-redes a {
  padding: 5px;
  background: transparent;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  border: 1px solid #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: normal;
  text-decoration: none;
  color: #fff;
}
#mainNavbar ul.redes-menu li.nav-item-redes a.facebook, #mainNavbar ul.transversal li.nav-item-redes a.facebook {
  font-size: 1.1rem;
}
#mainNavbar ul.redes-menu li.nav-item-redes a:hover, #mainNavbar ul.redes-menu li.nav-item-redes a:focus, #mainNavbar ul.transversal li.nav-item-redes a:hover, #mainNavbar ul.transversal li.nav-item-redes a:focus {
  background-color: #0C0C0D;
  filter: invert(1);
}
#mainNavbar ul.redes-menu li.nav-item-redes a img, #mainNavbar ul.transversal li.nav-item-redes a img {
  filter: invert(1);
  width: 100%;
  padding: 2px;
}
#mainNavbar .rotate-90 {
  transform: rotate(-90deg);
}
@media (max-width: 991px) {
  #mainNavbar .rotate-90 {
    transform: rotate(0deg);
  }
}
#mainNavbar .nav-item.dropdown2 {
  display: inline-block;
}
@media (min-width: 992px) {
  #mainNavbar .nav-item.dropdown2 .dropdown-menu2 {
    background: #000 !important;
    border-radius: 20px;
    border: 2px solid #fff !important;
    display: none;
    list-style: none;
    opacity: 0;
    padding: 1rem;
    position: absolute;
    left: 98%;
    top: 5px;
    visibility: hidden;
  }
}
@media (min-width: 992px) {
  #mainNavbar .nav-item.dropdown2 .dropdown-menu2:after {
    content: "";
    position: absolute;
    top: 18%;
    left: 0;
    border-style: solid;
    border-width: 7px 15px 7px 0;
    border-color: transparent #ffffff transparent transparent;
    translate: -100% -50%;
    transform: skew(0, 25deg);
    transform-origin: right;
  }
}
#mainNavbar .nav-item.dropdown2:hover .dropdown-menu2, #mainNavbar .nav-item.dropdown2:focus .dropdown-menu2, #mainNavbar .nav-item.dropdown2:focus-within .dropdown-menu2 {
  display: block;
  opacity: 1;
  visibility: visible;
  z-index: 9;
}
#mainNavbar .nav-item.dropdown2:hover .rotate-90, #mainNavbar .nav-item.dropdown2:focus .rotate-90, #mainNavbar .nav-item.dropdown2:focus-within .rotate-90 {
  visibility: hidden;
}
@media (max-width: 992px) {
  #mainNavbar .navbar-nav.ms-auto {
    margin-left: auto;
    margin-right: 0;
  }
  #mainNavbar .navbar-brand {
    margin-right: auto;
  }
  #mainNavbar .navbar-toggler {
    margin-left: auto;
    padding: 0;
    border-color: transparent;
  }
  #mainNavbar .navbar-nav.ms-auto {
    flex-direction: row;
  }
}
#mainNavbar ul.transversal {
  padding: 0 1rem;
  margin-left: 5px;
}

/* Dropdown items estilo */
.dropdown-menu {
  display: none;
  margin-top: -1px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out;
}

@media (max-width: 991px) {
  .dropdown-menu2 {
    display: block;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.3s ease-in-out;
    list-style: circle;
    margin-left: 2rem;
  }
}
.dropdown-menu.show {
  opacity: 1;
  visibility: visible;
}
.dropdown-menu.show li a {
  color: #fff !important;
}

/* Estilo para que los enlaces cambien de color cuando el menú está invertido */
#mainNavbar .dropdown-item {
  color: #0C0C0D;
}
#mainNavbar:hover .dropdown-item {
  color: #fff;
  opacity: 1;
}
#mainNavbar:hover .dropdown-item:hover, #mainNavbar:hover .dropdown-item:focus {
  color: #ebae36 !important;
}
@media (max-width: 991px) {
  #mainNavbar:hover .dropdown-item {
    text-align: right;
  }
}

/* Alineación específica para el contenido del navbar en responsive */
@media (max-width: 991px) {
  .navbar-nav.ms-auto {
    margin-left: auto;
    margin-right: 0;
  }
  .navbar-collapse.collapse.show {
    background-color: #0C0C0D;
  }
  /* Alinear logo a la izquierda */
  .navbar-brand {
    margin-right: auto;
  }
  /* Alinear el botón hamburguesa con las redes y el botón de entradas */
  .navbar-toggler {
    margin-left: auto;
  }
  /* Alinear el contenedor derecho debajo del menú */
  .navbar-nav.ms-auto {
    flex-direction: row;
  }
}
.dropdown-toggle::after {
  display: none;
}

@media (min-width: 992px) {
  .dropdown:hover > .nav-link, .dropdown:focus-within > .nav-link {
    color: #ebae36 !important;
  }
  .dropdown:hover .nav-link span, .dropdown:focus-within .nav-link span {
    text-shadow: 0 0px 10px rgb(0, 0, 0);
  }
  .dropdown:hover .dropdown-menu, .dropdown:focus-within .dropdown-menu {
    display: block;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.2s ease-in, visibility 0.2s ease-in;
  }
  .dropdown:hover i.fas.fa-chevron-down, .dropdown:focus-within i.fas.fa-chevron-down {
    transform: rotate(180deg);
  }
  .dropdown .dropdown-menu {
    display: block;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease-in, visibility 0.2s ease-in;
  }
}
.dropdown-toggle {
  position: relative;
}
.dropdown-toggle i.fas.fa-chevron-down {
  transition: transform 0.3s ease;
}

.menuhidden {
  min-height: 78px;
}

/* Estilos normales del menú */
#mainNavbar {
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* Clase sticky que aplicaremos */
.sticky {
  background-color: #393859;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1021; /* Asegurarse de que el menú esté por encima de otros elementos */
}

.container--search {
  display: none;
}

.container--search .close {
  position: absolute;
  right: 20px;
  top: 10px;
}
.container--search .close a {
  color: white;
  font-family: "roboto";
  font-weight: 500;
  font-size: 1em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  line-height: 1em;
}
.container--search .inner {
  max-width: 1360px;
  width: 100%;
  margin: 0 auto;
  padding: 80px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.container--search .form {
  width: 100%;
}
.container--search .form .field {
  position: relative;
}
.container--search .form .field input[type=text] {
  appearance: none;
  border: none;
  border-bottom: 3px solid white;
  padding: 8px 0;
  width: 100%;
  background: none;
  font-family: "roboto";
  font-weight: normal;
  color: white;
  text-align: center;
  font-size: 1.5em;
  padding-right: 50px;
}
.container--search .form .field input[type=text]:focus {
  outline: none;
  text-decoration: none;
}
.container--search .form .field input[type=text]::placeholder {
  color: #fff;
  opacity: 0.8;
  font-family: "Roboto", sans-serif;
  font-weight: normal;
}
.container--search .form .field .container--submit {
  position: absolute;
  right: 0;
  top: 0;
}
.container--search .form .field .container--submit::after {
  content: url("data:image/svg+xml,%3Csvg width='13px' height='20px' viewBox='0 0 13 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Pages' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg id='b%C3%83%C2%BAsqueda' transform='translate(-1476, -270)' stroke='%23FFFFFF' stroke-width='3'%3E%3Cg id='next-button-black' transform='translate(1462, 260)'%3E%3Cpolyline id='Path-Copy-2' transform='translate(20.4167, 20.3571) rotate(-90) translate(-20.4167, -20.3571)' points='12.5 15.8333333 20.4166668 24.8809525 28.3333335 15.8333333'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  display: block;
  line-height: 0;
  position: absolute;
  pointer-events: none;
  transform: translate(-50%, -50%);
  left: 50%;
  top: 50%;
}
.container--search .form .field .btn {
  appearance: none;
  width: 40px;
  height: 40px;
  border: none;
  border: 3px solid white;
  background: none;
  cursor: pointer;
}

.bg--navigation .container--search {
  display: none;
  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  -khtml-opacity: 0;
  opacity: 0;
  -webkit-transition: 0.9s;
  -moz-transition: 0.9s;
  -o-transition: 0.9s;
  transition: 0.9s;
}

.bg--navigation .container--search.show {
  display: block;
  -webkit-transition: 0.9s;
  -moz-transition: 0.9s;
  -o-transition: 0.9s;
  transition: 0.9s;
}

.bg--navigation .close a:after {
  content: url("data:image/svg+xml,%3Csvg width='28px' height='24px' viewBox='0 0 28 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Pages' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg id='b%C3%83%C2%BAsqueda' transform='translate(-1551, -152)' stroke='%23FFFFFF' stroke-width='2'%3E%3Cg id='Close' transform='translate(1477.7713, 152)'%3E%3Cg id='Double-Arrow-right-Copy' transform='translate(81.9128, 5.5473)'%3E%3Cg id='Scroll-button-Copy-6' transform='translate(-0.7406, 0.7406)'%3E%3Cg id='Scroll-button-Copy-3' transform='translate(6.2854, 5.5218) rotate(-90) translate(-6.2854, -5.5218)translate(-0, 0)'%3E%3Cline x1='0.271047578' y1='10.9736446' x2='12.2997995' y2='0.0699032322' id='Path-Copy-3' transform='translate(6.2854, 5.5218) rotate(0.892) translate(-6.2854, -5.5218)'%3E%3C/line%3E%3Cline x1='11.5474126' y1='-0.659413909' x2='1.02343445' y2='11.7029618' id='Path-Copy-3' transform='translate(6.2854, 5.5218) rotate(-89.108) translate(-6.2854, -5.5218)'%3E%3C/line%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  display: block;
  line-height: 0;
}

@media screen and (max-width: 670px) {
  .btn {
    font-size: 1em;
  }
  .container--search .form .field input[type=text] {
    font-size: 1em;
    padding: 15px 0;
  }
}
.buscador_responsive {
  width: 100%;
  margin: 10px 0;
}
.buscador_responsive .field {
  position: relative;
}
.buscador_responsive .field input[type=text] {
  appearance: none;
  -webkit-appearance: none;
  border: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  border-bottom: 1px solid white;
  padding: 8px 0;
  width: 100%;
  background: none;
  font-family: "roboto";
  font-weight: normal;
  color: white;
  text-align: center;
  font-size: 1em;
  padding-right: 50px;
}
.buscador_responsive .field input[type=text]:focus {
  outline: none;
  text-decoration: none;
}
.buscador_responsive .field .container--submit {
  position: absolute;
  right: 0;
  top: 0;
}
.buscador_responsive .field .container--submit:after {
  content: url("data:image/svg+xml,%3Csvg width='13px' height='20px' viewBox='0 0 13 20' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Pages' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg id='b%C3%83%C2%BAsqueda' transform='translate(-1476, -270)' stroke='%23FFFFFF' stroke-width='3'%3E%3Cg id='next-button-black' transform='translate(1462, 260)'%3E%3Cpolyline id='Path-Copy-2' transform='translate(20.4167, 20.3571) rotate(-90) translate(-20.4167, -20.3571)' points='12.5 15.8333333 20.4166668 24.8809525 28.3333335 15.8333333'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  display: block;
  line-height: 0;
  position: absolute;
  pointer-events: none;
  transform: translate(-50%, -50%);
  left: 50%;
  top: 50%;
}
.buscador_responsive .field .btn {
  appearance: none;
  width: 35px;
  height: 35px;
  border: none;
  border: 2px solid white;
  background: none;
  cursor: pointer;
}
@media screen and (max-width: 970px) {
  .buscador_responsive .field .container--submit {
    -webkit-transform: scale(0.9);
    -moz-transform: scale(0.9);
    -ms-transform: scale(0.9);
    -o-transform: scale(0.9);
  }
}
@media screen and (max-width: 670px) {
  .buscador_responsive .btn {
    font-size: 1em;
  }
  .buscador_responsive .field .container--submit {
    -webkit-transform: scale(0.6);
    -moz-transform: scale(0.6);
    -ms-transform: scale(0.6);
    -o-transform: scale(0.6);
  }
}

.js--search.calendario {
  color: #0C0C0D;
  font-weight: bold;
}
.js--search.calendario img {
  width: 20px;
  margin-bottom: 2px;
}

#calendar-container, #calendar-container-responsive {
  background: white;
  border-radius: 20px;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.2);
  padding: 10px;
  position: absolute;
  right: 0;
  top: 100%;
  z-index: 1000;
}
#calendar-container .ui-state-default, #calendar-container .ui-widget-content .ui-state-default, #calendar-container .ui-widget.ui-widget-content, #calendar-container .ui-widget-content, #calendar-container-responsive .ui-state-default, #calendar-container-responsive .ui-widget-content .ui-state-default, #calendar-container-responsive .ui-widget.ui-widget-content, #calendar-container-responsive .ui-widget-content {
  border-color: transparent;
}
#calendar-container .ui-datepicker .ui-datepicker-header, #calendar-container-responsive .ui-datepicker .ui-datepicker-header {
  border-radius: 20px;
}
#calendar-container .ui-widget-content .ui-state-default, #calendar-container-responsive .ui-widget-content .ui-state-default {
  border-radius: 8px;
}
#calendar-container .close, #calendar-container-responsive .close {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
#calendar-container .close button.js--close-calendario, #calendar-container .close button.js--close-calendario-responsive, #calendar-container-responsive .close button.js--close-calendario, #calendar-container-responsive .close button.js--close-calendario-responsive {
  color: #0C0C0D;
  font-family: "roboto";
  font-weight: 500;
  font-size: 1rem;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  line-height: 1em;
  border: none;
  background: none;
  border-radius: 8px;
}
#calendar-container .close button.js--close-calendario:hover, #calendar-container .close button.js--close-calendario:focus, #calendar-container .close button.js--close-calendario-responsive:hover, #calendar-container .close button.js--close-calendario-responsive:focus, #calendar-container-responsive .close button.js--close-calendario:hover, #calendar-container-responsive .close button.js--close-calendario:focus, #calendar-container-responsive .close button.js--close-calendario-responsive:hover, #calendar-container-responsive .close button.js--close-calendario-responsive:focus {
  color: #fff;
  background-color: #0C0C0D;
}
#calendar-container .close button.js--close-calendario:hover::after, #calendar-container .close button.js--close-calendario:focus::after, #calendar-container .close button.js--close-calendario-responsive:hover::after, #calendar-container .close button.js--close-calendario-responsive:focus::after, #calendar-container-responsive .close button.js--close-calendario:hover::after, #calendar-container-responsive .close button.js--close-calendario:focus::after, #calendar-container-responsive .close button.js--close-calendario-responsive:hover::after, #calendar-container-responsive .close button.js--close-calendario-responsive:focus::after {
  filter: invert(0);
}
#calendar-container .close button.js--close-calendario:after, #calendar-container .close button.js--close-calendario-responsive:after, #calendar-container-responsive .close button.js--close-calendario:after, #calendar-container-responsive .close button.js--close-calendario-responsive:after {
  content: url("data:image/svg+xml,%3Csvg width='28px' height='24px' viewBox='0 0 28 24' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Pages' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg id='b%C3%83%C2%BAsqueda' transform='translate(-1551, -152)' stroke='%23FFFFFF' stroke-width='2'%3E%3Cg id='Close' transform='translate(1477.7713, 152)'%3E%3Cg id='Double-Arrow-right-Copy' transform='translate(81.9128, 5.5473)'%3E%3Cg id='Scroll-button-Copy-6' transform='translate(-0.7406, 0.7406)'%3E%3Cg id='Scroll-button-Copy-3' transform='translate(6.2854, 5.5218) rotate(-90) translate(-6.2854, -5.5218)translate(-0, 0)'%3E%3Cline x1='0.271047578' y1='10.9736446' x2='12.2997995' y2='0.0699032322' id='Path-Copy-3' transform='translate(6.2854, 5.5218) rotate(0.892) translate(-6.2854, -5.5218)'%3E%3C/line%3E%3Cline x1='11.5474126' y1='-0.659413909' x2='1.02343445' y2='11.7029618' id='Path-Copy-3' transform='translate(6.2854, 5.5218) rotate(-89.108) translate(-6.2854, -5.5218)'%3E%3C/line%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  display: block;
  line-height: 0;
  filter: invert(1);
}

#calendar-container {
  filter: invert(1);
}

#calendar-container-responsive {
  position: relative;
  padding: 0;
  display: inline;
}
#calendar-container-responsive .ui-datepicker {
  width: 100%;
  filter: invert(1);
}

ul.redes-menu-responsive {
  margin: 0;
  padding-right: 0 !important;
  padding-left: 0 !important;
  gap: 1.1rem !important;
}
ul.redes-menu-responsive li a {
  color: #fff;
  font-size: 1.4rem;
}

/* Menú responsive */
@media (max-width: 991px) {
  /* Estilo para el menú desplegable */
  .navbar-collapse {
    overflow-y: visible; /* Permite desplazamiento interno */
    -webkit-overflow-scrolling: touch;
  }
  /* Evitar que el body se desplace cuando el menú esté abierto */
  body.menu-open {
    overflow: hidden;
  }
}
/* Estados para el menú */
.navbar-collapse.show {
  /* Añade una clase al body para indicar que el menú está abierto */
}
.navbar-collapse.show::before {
  content: "";
  display: block;
}

@media (max-width: 991px) {
  #mainNavbar .navbar-nav .nav-link.calendario {
    color: #0C0C0D;
  }
  ul.redes-menu-responsive {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  ul.redes-menu-responsive li.nav-item-redes {
    padding: 0;
    margin: 0;
  }
}
footer .footer--bottom {
  background-color: #0C0C0D;
}
footer .footer--bottom .contenedor {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
footer .footer--bottom .footer_info .footer--navigation {
  display: flex;
  align-items: center;
}
footer .footer--bottom .footer_info p, footer .footer--bottom .footer_info nav {
  color: #fff;
  margin: 0;
  padding: 0;
  font-family: "Lato", sans-serif;
  font-size: 1rem;
}
footer .footer--bottom .footer_info p a, footer .footer--bottom .footer_info nav a {
  color: #fff;
}
footer .footer--bottom .footer_info nav ul {
  display: flex;
  gap: 2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 991px) {
  footer .footer--bottom .footer_info nav ul {
    gap: 0.7rem;
  }
}
@media (max-width: 765px) {
  footer .footer--bottom .footer_info nav ul {
    gap: 0.7rem;
    margin-top: 1rem;
  }
}
footer .footer--bottom .footer_info nav ul li a {
  color: #fff;
}

.menu-footer ul li a span {
  font-size: 1rem;
  font-weight: bold;
  font-family: "Lato", sans-serif;
  text-shadow: 0 0 2px #0C0C0D;
}

.footerprevio {
  background: linear-gradient(90deg, rgba(23, 56, 103, 0.9696472339) 0%, rgba(23, 56, 103, 0.4962578782) 52%, rgba(23, 56, 103, 0.9724483543) 100%);
  max-width: 1400px;
  margin: auto;
  padding-top: 2rem;
  color: #FFF;
}
.footerprevio .transversal a {
  padding: 0 0.25rem;
}
.footerprevio .cambios {
  color: #fff;
  font-weight: bold;
}
.footerprevio .nav {
  padding: 1rem 0;
  flex-direction: row-reverse;
  position: relative;
}
.footerprevio .nav li.nav-item {
  position: relative;
  padding: 5px;
}
.footerprevio .nav li.nav-item::before {
  content: "";
  position: absolute;
  right: 0;
  left: 0;
  top: 10px;
  width: 1px;
  height: 11px;
  border-right: 1px solid rgba(255, 255, 255, 0.55);
}
.footerprevio .nav li.nav-item:last-child::before {
  content: "";
  position: relative;
  border-right: none;
}

.footerLogos {
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  background-color: #393859;
  color: #fff;
}
.footerLogos .container2 {
  max-width: 100%;
  width: 1800px;
  margin: auto;
}
@media (max-width: 767px) {
  .footerLogos {
    padding: 1rem 0.5rem;
  }
}
.footerLogos ul.fila1 {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
}
.footerLogos ul.fila1 li {
  display: flex;
  align-items: center;
  align-content: center;
  flex-direction: column;
}
.footerLogos ul.fila1 li img {
  margin: 0.5rem;
}
.footerLogos aside.logos {
  background-color: rgba(0, 0, 0, 0.1);
}
.footerLogos a:hover, .footerLogos a:focus {
  filter: drop-shadow(0px 0px 5px #f7d470);
}
.footerLogos .semibold {
  font-family: "abril-fatface", serif;
  font-weight: 400;
  font-style: italic;
  font-size: 1.1rem;
  text-transform: lowercase;
}
.footerLogos .semibold::first-letter {
  text-transform: uppercase;
}
.footerLogos .colaboradores, .footerLogos .colaboradorinstitucional, .footerLogos .patrocinadores-oficiales {
  padding-left: 7px;
  padding-right: 7px;
  border-left: 1px solid #fff;
  margin-bottom: 5px;
}
.footerLogos .colaboradores p, .footerLogos .colaboradorinstitucional p, .footerLogos .patrocinadores-oficiales p {
  position: relative;
  z-index: 11;
  font-size: 0.9rem;
}
.footerLogos .colaboradorinstitucional p.textop {
  margin-bottom: 0.5rem;
}
.footerLogos .fila1 {
  gap: 18px;
}
@media (max-width: 1600px) {
  .footerLogos .fila1 {
    gap: 0;
  }
}
@media (max-width: 1500px) {
  .footerLogos .fila1 li img {
    margin: 0.3rem !important;
  }
}
.footerLogos .nopatr {
  margin-right: 2rem;
}
.footerLogos img {
  height: auto;
  display: block;
}
.footerLogos #logo_1 {
  width: clamp(108.5px, 108.5px + (46.5px) * (100vw - 768px) / (832px), 155px);
}
.footerLogos #logo_2 {
  width: clamp(108.5px, 108.5px + (46.5px) * (100vw - 768px) / (832px), 155px);
}
.footerLogos #logo_3 {
  width: clamp(91px, 91px + (39px) * (100vw - 768px) / (832px), 130px);
}
.footerLogos #logo_4 {
  width: clamp(70px, 70px + (30px) * (100vw - 768px) / (832px), 100px);
}
.footerLogos #logo_5 {
  width: clamp(66.5px, 66.5px + (28.5px) * (100vw - 768px) / (832px), 95px);
}
.footerLogos #logo_6 {
  width: clamp(126px, 126px + (54px) * (100vw - 768px) / (832px), 180px);
}
.footerLogos #logo_7 {
  width: clamp(105px, 105px + (45px) * (100vw - 768px) / (832px), 150px);
}
.footerLogos #logo_8 {
  width: clamp(91px, 91px + (39px) * (100vw - 768px) / (832px), 130px);
}
.footerLogos #logo_9 {
  width: clamp(98px, 98px + (42px) * (100vw - 768px) / (832px), 140px);
}
.footerLogos #logo_10 {
  width: clamp(122.5px, 122.5px + (52.5px) * (100vw - 768px) / (832px), 175px);
}
.footerLogos #logo_11 {
  width: clamp(87.5px, 87.5px + (37.5px) * (100vw - 768px) / (832px), 125px);
  margin-top: -0.5rem;
}
.footerLogos a {
  padding-left: 0.1rem;
  padding-right: 0.1rem;
}
.footerLogos a img {
  position: relative;
  padding-left: 10px;
  padding-right: 10px;
  transition: 0.2s;
}
.footerLogos a:hover img, .footerLogos a:focus img {
  transition: 0.2s;
}
.footerLogos .claim {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  flex-wrap: wrap;
}
.footerLogos .claim .titulo1,
.footerLogos .claim .titulo2,
.footerLogos .claim .titulo3,
.footerLogos .claim .titulo4 {
  height: 53px;
}
.footerLogos ul.agrupaciones {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}
.footerLogos ul.agrupaciones li {
  width: 100%;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.previofooter {
  background: url("/images/banner/cielo.jpg") no-repeat;
  background-size: cover;
  border-top: 1px solid #111;
}
.previofooter .info_seccion {
  font-weight: bold;
}
.previofooter ul {
  list-style: none;
}
.previofooter .title, .previofooter .info_seccion a {
  color: #eee;
}
.previofooter .subfooter-contenido {
  background-color: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(2px);
}
.previofooter .cat-subfooter {
  padding: 0.5rem;
  position: relative;
}
@media (min-width: 992px) {
  .previofooter .cat-subfooter:before {
    content: "";
    position: absolute;
    top: 2%;
    left: 0;
    width: 1px;
    height: 93.7%;
    background-color: rgba(255, 255, 255, 0.2);
  }
  .previofooter .cat-subfooter::after {
    content: "";
    position: absolute;
    right: 0;
    top: 2%;
    width: 1px;
    height: 93.7%;
    background-color: rgba(255, 255, 255, 0.2);
  }
}
.previofooter ul.agrupaciones {
  padding: 0;
}
@media (min-width: 992px) {
  .previofooter ul.agrupaciones {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
    margin-left: 5px;
  }
}
@media (max-width: 991px) {
  .previofooter ul.agrupaciones {
    margin-left: 0;
  }
  .previofooter ul.agrupaciones li a {
    padding-left: 0;
  }
}
.previofooter ul.agrupaciones li {
  display: block;
  color: #fff;
  line-height: normal;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
@media (min-width: 992px) {
  .previofooter ul.agrupaciones li {
    width: 45%;
    padding: 4px 0;
  }
}
.previofooter ul.agrupaciones li a {
  color: #fff;
  font-size: 0.9rem;
  padding: 2px 1px;
  text-shadow: 0 -1px #000, 1px 0 #000, 0 1px #000, -1px 0 #0C0C0D;
  line-height: normal;
}
.previofooter ul.agrupaciones li a img {
  max-width: 20px;
  filter: drop-shadow(0px 0px 1px rgb(177, 80, 80));
}
.previofooter ul.agrupaciones li a:hover span, .previofooter ul.agrupaciones li a:focus span {
  background-size: 100% 1px;
}
.previofooter ul.agrupaciones.accesibilidad {
  border-bottom: none;
}

.sujeta-cambios {
  background-color: #111;
  position: relative;
}
.sujeta-cambios:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background-image: url("/images/noise.png");
  /* Imagen de grano */
  opacity: 1;
  /* Ajusta la opacidad para intensificar o suavizar el efecto de grano */
}
.sujeta-cambios p {
  color: #fff;
  padding: 0.2rem;
}
@media (min-width: 992px) {
  .sujeta-cambios p {
    padding: 1rem;
  }
}

.banner a {
  text-decoration: none;
}
@media (max-width: 991px) {
  .banner a {
    display: none;
  }
}
.banner a h1 {
  transition: 0.3s;
}
.banner a:hover h1, .banner a:hover .h1_banner, .banner a:focus h1, .banner a:focus .h1_banner {
  transform: scaleY(1.2);
  transition: 0.3s;
  text-shadow: 0 -1px 0 #f8f8f8, 0 0 15px rgba(248, 240, 226, 0.6);
}
.banner a:hover h1 .first-letter::after,
.banner a:hover h1 .last-letter::after, .banner a:hover .h1_banner .first-letter::after,
.banner a:hover .h1_banner .last-letter::after, .banner a:focus h1 .first-letter::after,
.banner a:focus h1 .last-letter::after, .banner a:focus .h1_banner .first-letter::after,
.banner a:focus .h1_banner .last-letter::after {
  background: none;
  position: relative;
}
.banner h1, .banner .h1_banner {
  font-family: "Times New Roman", "Lusitana", serif;
  transform: scaleY(1.2);
  font-weight: 400;
  font-style: normal;
  color: #ebae36;
  position: relative;
  background: linear-gradient(to bottom, #bbb, #000, #000);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 -1px 0 #ebae36, 0 0 15px rgba(245, 212, 155, 0.6);
  z-index: 0;
  font-size: 6vw;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  margin: 0;
  padding: 0;
  min-height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: normal;
}
@media (max-width: 750px) {
  .banner h1, .banner .h1_banner {
    font-size: 5.6vw;
  }
}
@media (min-width: 1600px) {
  .banner h1, .banner .h1_banner {
    font-size: 96px; /* Tamaño en pantallas grandes */
  }
}
.banner h1 .first-letter,
.banner h1 .last-letter, .banner .h1_banner .first-letter,
.banner .h1_banner .last-letter {
  position: relative;
  background-size: 60px;
}
.banner h1 .first-letter::after,
.banner h1 .last-letter::after, .banner .h1_banner .first-letter::after,
.banner .h1_banner .last-letter::after {
  content: "";
  position: absolute;
  top: -3px;
  left: -1.2vw;
  width: clamp(20px, 4vw, 60px);
  height: clamp(20px, 4vw, 60px);
  background-image: url("/images/banner/halo2.png");
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0;
  transform: scale(1);
  animation: haloGlow 2s ease-in-out 0.5s forwards, haloPulse 3s ease-in-out 2.5s infinite;
  mix-blend-mode: color-dodge;
}
@media (max-width: 750px) {
  .banner h1 .first-letter::after,
  .banner h1 .last-letter::after, .banner .h1_banner .first-letter::after,
  .banner .h1_banner .last-letter::after {
    top: -5px;
    left: -2vw;
  }
}
.banner h1 .last-letter::after, .banner .h1_banner .last-letter::after {
  left: 0.2vw;
  bottom: 0;
}

@keyframes haloGlow {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0;
    transform: scale(1.2);
  }
  100% {
    opacity: 1;
    transform: scale(1.3);
  }
}
@keyframes haloPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
@keyframes shine {
  0% {
    left: -100%;
    opacity: 0;
  }
  50% {
    left: 50%;
    opacity: 1;
  }
  100% {
    left: 200%;
    opacity: 0;
  }
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.banner-aviso {
  background-color: #39487d;
}

.aviso {
  border: 3px solid #fff;
  width: 100%;
  background: rgba(221, 155, 0, 0.95);
  border-radius: 8px;
  backdrop-filter: blur(20px);
}
.aviso p {
  font-size: 1.3rem;
  font-size: clamp(1.1rem, 4vw, 20px);
}
.aviso h2 {
  font-size: clamp(1.8rem, 5vw, 2.5rem);
  margin-top: 0;
  font-family: "Times New Roman", "Lusitana", serif;
}

.boton_aviso a {
  border: 3px solid #fff;
  text-decoration: none;
  font-size: 1.125rem;
  color: #fff;
  border-radius: 0;
  line-height: 1.25;
  display: inline-block;
  padding: 0.3125rem 1rem;
  position: relative;
  transition: all 0.5s;
  opacity: 1;
  background-clip: padding-box;
}
.boton_aviso a:hover, .boton_aviso a:focus {
  color: #0C0C0D;
  background-color: #fff;
}

.hidden_cookie {
  display: none;
}

.bloque_aviso {
  position: relative;
}
.bloque_aviso button {
  background: transparent;
  color: #fff;
  border: none;
}
.bloque_aviso.hidden_cookie {
  display: none;
}
.bloque_aviso .view-header {
  position: absolute;
  right: 20px;
  top: 20px;
  z-index: 2;
  text-transform: uppercase;
  font-size: 1em;
  color: #fff;
  font-family: var(--font-family-text);
  font-weight: var(--font-weight-medium);
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}
@media (max-width: 991px) {
  .bloque_aviso .view-header {
    right: 2%;
    top: 2%;
    font-size: 0.9rem;
  }
}
@media (min-width: 48rem) {
  .bloque_aviso .view-header {
    right: 30px;
  }
}
.bloque_aviso .close-button {
  display: flex;
  align-items: center;
}
.bloque_aviso .close-button:hover, .bloque_aviso .close-button:focus {
  text-decoration: underline;
}
.bloque_aviso .close-button:after {
  content: "";
  height: 25px;
  width: 25px;
  background: url(/images/icon-close.svg) no-repeat center;
  display: block;
  filter: invert(1);
}

/*Boton de venta de entradas*/
.boton-venta {
  position: relative;
}
.boton-venta .venta {
  display: flex;
  flex: 0 0 auto;
  text-shadow: none;
}
@media (max-width: 767px) {
  .boton-venta .venta {
    justify-content: center;
  }
}
.boton-venta .entradas-btn {
  background: #111;
  /* color de fondo */
  color: #fff;
  /* color de fuente */
  border: 2px solid #111;
  /* tamaño y color de borde */
  border-radius: 0;
  position: relative;
  z-index: 1;
  overflow: hidden;
  max-width: 250px;
  font-size: 1rem;
  text-shadow: none !important;
  display: flex !important;
  justify-content: center;
  text-decoration: none;
}
.boton-venta .entradas-btn img {
  display: inline;
  vertical-align: middle;
  margin: 2px;
  width: 17px;
  max-width: 17px;
}
.boton-venta .entradas-btn:after {
  content: "";
  background: #A26839;
  /* color de fondo hover */
  position: absolute;
  z-index: -1;
  display: block;
  left: -20%;
  right: -20%;
  top: 0;
  bottom: 0;
  transform: skewX(-45deg) scale(0, 1);
  transition: all 0.3s ease;
}
.boton-venta .entradas-btn:hover, .boton-venta .entradas-btn:focus {
  background: #A26839;
  color: #fff;
  border-color: #A26839;
  text-shadow: none;
}
.boton-venta .entradas-btn:hover::after, .boton-venta .entradas-btn:focus::after {
  transition: all 0.3s ease-out;
  transform: skewX(-45deg) scale(1, 1);
}

.prensa .draw-border {
  border-radius: 0;
  background: #111;
  border: 1px solid #111;
  color: #fff;
}
.prensa .draw-border:hover, .prensa .draw-border:focus {
  background: #fff;
  border-color: #0C0C0D;
  color: #0C0C0D;
}
.prensa .draw-border:hover span, .prensa .draw-border:focus span {
  color: #0C0C0D;
  background: none;
  transition: none;
}
.prensa .draw-border:hover span.size, .prensa .draw-border:focus span.size {
  color: #A26839;
}
.prensa .descargar_prensa a {
  border-radius: 0;
  background: #111;
  border: 1px solid #111;
  color: #fff;
  font-size: 1rem;
  display: inline-block;
  padding: 6px 12px;
}
.prensa .descargar_prensa a img {
  transform: none;
}
.prensa .descargar_prensa a img.img-galeria-ico {
  filter: invert(1);
}
.prensa .descargar_prensa a .size {
  color: #caef8a;
  font-size: 0.75rem;
}
.prensa .descargar_prensa a:hover, .prensa .descargar_prensa a:focus {
  background: #fff;
  border-color: #0C0C0D;
  color: #0C0C0D;
}
.prensa .descargar_prensa a:hover img.img-galeria-ico, .prensa .descargar_prensa a:focus img.img-galeria-ico {
  filter: invert(0);
}
.prensa .descargar_prensa a:hover span, .prensa .descargar_prensa a:focus span {
  color: #0C0C0D;
  background: none;
  transition: none;
}
.prensa .descargar_prensa a:hover span.size, .prensa .descargar_prensa a:focus span.size {
  color: #A26839;
}

/* Boton de editar */
.edita {
  position: absolute;
  z-index: 3;
  top: 1rem;
  right: 1rem;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 50%;
}
.edita a {
  padding: 0.5rem 0.7rem;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.4);
  color: #000 !important;
  height: 40px;
  width: 40px;
}
.edita a:hover, .edita a:focus {
  border: 1px solid rgba(255, 255, 255, 0.4);
  color: #fff !important;
  background-color: rgba(0, 0, 0, 0.8);
}

h2#cdm {
  line-height: 85%;
  font-family: "Teko", sans-serif;
  font-size: 3.7rem;
  font-size: clamp(1.8rem, 3.7vw, 3.7rem);
  margin-top: 11.7%;
}
@media (max-width: 1271px) {
  h2#cdm {
    margin-top: 12.4%;
    font-size: clamp(1.8rem, 3.4vw, 3rem);
  }
}
@media (max-width: 1199px) {
  h2#cdm {
    margin-top: 10%;
  }
}

@media (min-width: 992px) {
  .sticky-top {
    top: 110px;
  }
}
.card.info h3 {
  text-decoration: underline;
  font-size: 1rem;
  line-height: 1.5em;
  font-weight: normal;
  text-transform: uppercase;
  margin-top: 1rem;
}
.card.info h3:nth-of-type(1) {
  margin-top: 0;
}
.card.info p {
  font-size: 1rem;
  line-height: 1.5rem;
  font-weight: normal;
  margin-bottom: 0.5rem;
}
.card.info p a {
  color: #fff;
}

.cc-text,
.ccm__content__heading {
  margin-bottom: 1rem;
}
.cc-text p,
.cc-text a,
.ccm__content__heading p,
.ccm__content__heading a {
  color: #fff;
  display: inline;
  font-size: 16px;
  font-family: "Lato", sans-serif;
  line-height: 1.7rem;
}
.cc-text h1,
.ccm__content__heading h1 {
  color: #fff !important;
  font-size: 1.8rem;
  font-weight: bold;
  font-family: "Times new roman", serif;
}

.cc-text a {
  text-decoration: underline;
}

#cconsent-bar button.ccb__edit {
  text-decoration: none !important;
}

#cconsent-bar .ccb__right {
  white-space: normal !important;
  width: 100%;
}

#cconsent-modal .ccm__content > .ccm__content__heading strong, #cconsent-init-modal .ccm__content > .ccm__content__heading strong {
  color: #fff !important;
  display: block;
  margin-bottom: 2rem;
}

#cconsent-bar {
  max-width: 100%;
  right: 0;
  width: 750px;
}
@media (min-width: 780px) {
  #cconsent-bar {
    border-top-right-radius: 30px;
  }
}
#cconsent-bar button {
  background-color: #000 !important;
  border-radius: 10px;
  border: 2px solid #fff !important;
  color: #fff !important;
  font-family: "Lato", sans-serif;
  font-size: 16px;
  padding: 8px 10px !important;
  transition: all, 0.3s;
}
#cconsent-bar button:hover, #cconsent-bar button:focus {
  background-color: #fff !important;
  color: #000 !important;
}

.ccb__button {
  gap: 20px;
  display: flex !important;
  justify-content: center;
  align-items: center;
  margin-bottom: 1rem;
}
@media (max-width: 780px) {
  .ccb__button {
    gap: 10px;
  }
}
.ccb__button button {
  font-size: 16px !important;
}

#cconsent-modal .ccm__footer,
#cconsent-modal .ccm__content,
#cconsent-modal .ccm__content > .ccm__content__heading,
#cconsent-modal .ccm__content > .ccm__content__heading .ccm__cheading__close {
  background: #000 !important;
  color: #fff !important;
  border-bottom: none !important;
}
#cconsent-modal .ccm__footer h2,
#cconsent-modal .ccm__content h2,
#cconsent-modal .ccm__content > .ccm__content__heading h2,
#cconsent-modal .ccm__content > .ccm__content__heading .ccm__cheading__close h2 {
  color: #fff !important;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-head {
  font-size: 16px;
  font-family: "Lato", sans-serif;
}
#cconsent-modal .ccm__content {
  border: 2px solid #fff !important;
}
#cconsent-modal .ccm__footer button {
  border-radius: 8px;
  border: 2px solid #fff;
  font-size: 16px;
  font-family: "Lato", sans-serif;
}
#cconsent-modal .ccm__footer button:hover, #cconsent-modal .ccm__footer button:focus {
  background-color: #fff !important;
  color: #000 !important;
}
#cconsent-modal .ccm__list ul {
  color: #000 !important;
}

#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch {
  display: flex !important;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch label {
  padding-left: 0.5rem;
  color: #0C0C0D;
}
#cconsent-modal .ccm__content > .ccm__content__body .ccm__tab-content .ccm__tab-content__left .ccm__switch input {
  display: block !important;
}

#cconsent-modal .ccm__content {
  justify-content: start !important;
}

#cconsent-modal .ccm__footer button + button, #cconsent-init-modal .ccm__footer button + button, #ccm__footer__consent-modal-submit {
  border: 2px solid #fff !important;
  border-radius: 10px !important;
  font-family: "Lato", sans-serif !important;
  font-size: 1rem !important;
  padding: 8px 10px !important;
}

#cconsent-modal .ccm__footer {
  padding: 20px !important;
  align-items: center;
  justify-content: center !important;
  flex-wrap: wrap;
  margin: 3px;
  height: auto !important;
}
#cconsent-modal .ccm__footer button {
  flex: 1;
  margin: 5px;
}

#cconsent-modal .ccm__content > .ccm__content__heading p {
  margin-top: 1rem;
  margin-bottom: 1rem;
  display: block;
  text-align: justify;
  hyphens: auto;
}

.ccm__switch .custom-control-label {
  padding-left: 1rem;
  padding-bottom: 1rem;
}
.ccm__switch .custom-control-label::before {
  height: 1rem;
  width: calc(1rem + 0.75rem);
}
.ccm__switch .custom-control-label::after {
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
}
.ccm__switch .ccm__switch:checked ~ .custom-control-label::after {
  transform: translateX(calc(1rem - 0.25rem));
}

@media (max-width: 991px) {
  .cc-text {
    text-align: justify;
    hyphens: auto;
  }
  #cconsent-bar .ccb__wrapper {
    justify-content: center !important;
  }
}
#cconsent-bar button.ccb__edit, #cconsent-bar button.consent-decline {
  margin-right: 0 !important;
}

#cconsent-bar button.consent-give, #cconsent-bar button.consent-decline {
  width: 90px;
}

.bloquedescargas {
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
}

.cartel-descargas {
  position: relative;
  z-index: 9;
}
.cartel-descargas a span {
  background-image: none;
}
.cartel-descargas a:hover, .cartel-descargas a:focus {
  color: #c72846 !important;
}
@media (max-width: 1199px) {
  .cartel-descargas {
    padding-bottom: 4.5rem;
  }
}

.cartel-texto {
  margin-top: 2rem;
  z-index: 1;
  padding: 0.5rem 1rem;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}
.cartel-texto::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(to top left, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0));
  z-index: -1;
}

.cartel {
  min-height: 400px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0;
  padding-bottom: 4rem;
  overflow: hidden;
  position: relative;
}
.cartel .container {
  max-width: 1100px;
  width: calc(100% - 40px);
}
.cartel .descripcion.border-bottom {
  border-bottom: 1px solid rgba(255, 255, 255, 0.3) !important;
  padding-bottom: 2rem;
}
.cartel .descripcion.border-bottom p a {
  text-decoration: none;
}
.cartel h2 {
  font-size: 1.6rem;
  font-weight: 400;
  font-size: clamp(1.6rem, 2vw, 1.9rem);
  margin: 2rem 0;
  width: 100%;
  color: #fff;
}
.cartel .descripcion {
  font-weight: normal;
  font-size: 1rem;
}
.cartel .descripcion a {
  color: #fff7e7;
}
.cartel .cartel-descarga a {
  margin-top: 3rem;
  text-decoration: none;
  font-size: 1rem;
  background: #fff;
  padding: 0.5rem;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
.cartel .cartel-descarga a img {
  transition: all 0.5s;
}
.cartel .cartel-descarga a:hover, .cartel .cartel-descarga a:focus {
  text-decoration: underline;
}
.cartel .cartel-descarga a:hover img, .cartel .cartel-descarga a:focus img {
  transform: scale(1.05, 1.05);
}
.cartel .cartel-descarga a .txtdescargar.chulapa {
  font-size: 1.1rem;
}
.cartel .cartel-descarga a .size {
  font-size: 0.8rem;
}
.cartel .texto {
  padding: 0.25rem;
}
.cartel .imgcartel {
  display: block;
  overflow: hidden;
}
.cartel p {
  color: #ffffff;
  margin: 3px 0;
  width: 100%;
  text-shadow: 0 0 1px #000;
}
.cartel a {
  color: #c72846;
  display: inline-block;
  transition: all 0.2s;
  text-decoration: underline;
  font-weight: bold;
}
.cartel a:hover, .cartel a:focus {
  color: #e7b733;
}

.cartel.color2descargas {
  border-top: 1px solid rgba(255, 255, 255, 0.38);
}

@media screen and (max-width: 576px) {
  .cartel {
    padding: 0.5rem 0;
  }
  .cartel h2 {
    width: 100%;
    text-align: left;
    margin-bottom: 1rem;
  }
  .cartel .body {
    padding: 30px;
  }
}
.corte2 {
  display: none;
  position: absolute;
  z-index: 5;
  top: -1px;
  width: 100%;
  max-height: 123px;
  height: 13vw;
  transform: scaleY(-1);
  overflow: hidden;
}
.corte2 svg {
  position: relative;
  display: block;
  width: calc(160% + 1.3px);
  height: 165px;
}
.corte2 .shape-fill {
  fill: #fff;
}

@media (min-width: 1600px) {
  .corte2 {
    display: block;
  }
}
@media (max-width: 1599px) and (min-width: 1200px) {
  .corte2 {
    display: block;
    max-height: 60px;
  }
  .corte2 svg {
    height: 105px;
  }
}
@media (min-width: 1599px) and (max-width: 1199px) {
  .cartel {
    padding-top: 2rem;
  }
}
@media (max-width: 756px) {
  .bloquedescargas {
    text-align: center;
  }
  .bloquedescargas .cartel-texto h2 {
    text-align: center;
  }
  .bloquedescargas p {
    padding: 0 1.2rem;
  }
}
#cartel {
  position: relative;
  overflow: hidden;
  z-index: 0;
}
#cartel .img-fondo {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2000px;
  background-position: top center !important;
  background-repeat: no-repeat;
  background-size: 100% !important;
  background-repeat: no-repeat !important;
  z-index: -1;
}
@media (max-width: 991px) {
  #cartel .img-fondo {
    background-size: cover !important;
  }
}
#cartel::before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.2);
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}
#cartel .img-fondo0 {
  background: url(/images/banner-descargar/sky.jpg);
  background-size: cover;
}
#cartel .img-fondo1 {
  background: url(/images/banner-descargar/img-nosky.webp);
}
@media (max-width: 756px) {
  #cartel .img-fondo1 {
    bottom: 0;
  }
}

/*! jQuery UI - v1.12.1 - 2016-09-14
* http://jqueryui.com
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Arial%2CHelvetica%2Csans-serif&fsDefault=1em&fwDefault=normal&cornerRadius=3px&bgColorHeader=e9e9e9&bgTextureHeader=flat&borderColorHeader=dddddd&fcHeader=333333&iconColorHeader=444444&bgColorContent=ffffff&bgTextureContent=flat&borderColorContent=dddddd&fcContent=333333&iconColorContent=444444&bgColorDefault=f6f6f6&bgTextureDefault=flat&borderColorDefault=c5c5c5&fcDefault=454545&iconColorDefault=777777&bgColorHover=ededed&bgTextureHover=flat&borderColorHover=cccccc&fcHover=2b2b2b&iconColorHover=555555&bgColorActive=11264f&bgTextureActive=flat&borderColorActive=4d609b&fcActive=ffffff&iconColorActive=ffffff&bgColorHighlight=fffa90&bgTextureHighlight=flat&borderColorHighlight=dad55e&fcHighlight=777620&iconColorHighlight=777620&bgColorError=fddfdf&bgTextureError=flat&borderColorError=f1a899&fcError=5f3f3f&iconColorError=cc0000&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=666666&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=5px&offsetTopShadow=0px&offsetLeftShadow=0px&cornerRadiusShadow=8px
* Copyright jQuery Foundation and other contributors; Licensed MIT */
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
  display: none;
}

.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none;
}

.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse;
}

.ui-helper-clearfix:after {
  clear: both;
}

.ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: Alpha(Opacity=0); /* support: IE8 */
}

.ui-front {
  z-index: 100;
}

/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
  cursor: default !important;
  pointer-events: none;
}

/* Icons
----------------------------------*/
.ui-icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: -0.25em;
  position: relative;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
}

.ui-widget-icon-block {
  left: 50%;
  margin-left: -8px;
  display: block;
}

/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.ui-accordion .ui-accordion-header {
  display: block;
  cursor: pointer;
  position: relative;
  margin: 2px 0 0 0;
  padding: 0.5em 0.5em 0.5em 0.7em;
  font-size: 100%;
}

.ui-accordion .ui-accordion-content {
  padding: 1em 2.2em;
  border-top: 0;
  overflow: auto;
}

.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default;
}

.ui-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
  outline: 0;
}

.ui-menu .ui-menu {
  position: absolute;
}

.ui-menu .ui-menu-item {
  margin: 0;
  cursor: pointer;
  /* support: IE10, see #8844 */
  list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}

.ui-menu .ui-menu-item-wrapper {
  position: relative;
  padding: 3px 1em 3px 0.4em;
}

.ui-menu .ui-menu-divider {
  margin: 5px 0;
  height: 0;
  font-size: 0;
  line-height: 0;
  border-width: 1px 0 0 0;
}

.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
  margin: -1px;
}

/* icon support */
.ui-menu-icons {
  position: relative;
}

.ui-menu-icons .ui-menu-item-wrapper {
  padding-left: 2em;
}

/* left-aligned */
.ui-menu .ui-icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0.2em;
  margin: auto 0;
}

/* right-aligned */
.ui-menu .ui-menu-icon {
  left: auto;
  right: 0;
}

.ui-button {
  padding: 0.4em 1em;
  display: inline-block;
  position: relative;
  line-height: normal;
  margin-right: 0.1em;
  cursor: pointer;
  vertical-align: middle;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /* Support: IE <= 11 */
  overflow: visible;
}

.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
  text-decoration: none;
}

/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
  width: 2em;
  box-sizing: border-box;
  text-indent: -9999px;
  white-space: nowrap;
}

/* no icon support for input elements */
input.ui-button.ui-button-icon-only {
  text-indent: 0;
}

/* button icon element(s) */
.ui-button-icon-only .ui-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -8px;
  margin-left: -8px;
}

.ui-button.ui-icon-notext .ui-icon {
  padding: 0;
  width: 2.1em;
  height: 2.1em;
  text-indent: -9999px;
  white-space: nowrap;
}

input.ui-button.ui-icon-notext .ui-icon {
  width: auto;
  height: auto;
  text-indent: 0;
  white-space: normal;
  padding: 0.4em 1em;
}

/* workarounds */
/* Support: Firefox 5 - 40 */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.ui-controlgroup {
  vertical-align: middle;
  display: inline-block;
}

.ui-controlgroup > .ui-controlgroup-item {
  float: left;
  margin-left: 0;
  margin-right: 0;
}

.ui-controlgroup > .ui-controlgroup-item:focus,
.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus {
  z-index: 9999;
}

.ui-controlgroup-vertical > .ui-controlgroup-item {
  display: block;
  float: none;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  text-align: left;
}

.ui-controlgroup-vertical .ui-controlgroup-item {
  box-sizing: border-box;
}

.ui-controlgroup .ui-controlgroup-label {
  padding: 0.4em 1em;
}

.ui-controlgroup .ui-controlgroup-label span {
  font-size: 80%;
}

.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item {
  border-left: none;
}

.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item {
  border-top: none;
}

.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content {
  border-right: none;
}

.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content {
  border-bottom: none;
}

/* Spinner specific style fixes */
.ui-controlgroup-vertical .ui-spinner-input {
  /* Support: IE8 only, Android < 4.4 only */
  width: 75%;
  width: calc(100% - 2.4em);
}

.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
  border-top-style: solid;
}

.ui-checkboxradio-label .ui-icon-background {
  box-shadow: inset 1px 1px 1px #ccc;
  border-radius: 0.12em;
  border: none;
}

.ui-checkboxradio-radio-label .ui-icon-background {
  width: 16px;
  height: 16px;
  border-radius: 1em;
  overflow: visible;
  border: none;
}

.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon {
  background-image: none;
  width: 8px;
  height: 8px;
  border-width: 4px;
  border-style: solid;
}

.ui-checkboxradio-disabled {
  pointer-events: none;
}

.ui-datepicker {
  width: 17em;
  padding: 0.2em 0.2em 0;
  display: none;
}

.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: 0.2em 0;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em;
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
  top: 1px;
  background-size: initial;
}

.ui-datepicker .ui-datepicker-prev {
  left: 2px;
}

.ui-datepicker .ui-datepicker-next {
  right: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover {
  left: 1px;
}

.ui-datepicker .ui-datepicker-next-hover {
  right: 1px;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  background-size: initial;
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px;
}

.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center;
}

.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0;
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 45%;
}

.ui-datepicker table {
  width: 100%;
  font-size: 0.9em;
  border-collapse: collapse;
  margin: 0 0 0.4em;
}

.ui-datepicker th {
  padding: 0.7em 0.3em;
  text-align: center;
  font-weight: bold;
  border: 0;
}

.ui-datepicker td {
  border: 0;
  padding: 1px;
}

.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  padding: 0.2em;
  text-align: right;
  text-decoration: none;
}

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: 0.7em 0 0 0;
  padding: 0 0.2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0;
}

.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: 0.5em 0.2em 0.4em;
  cursor: pointer;
  padding: 0.2em 0.6em 0.3em 0.6em;
  width: auto;
  overflow: visible;
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left;
}

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto;
}

.ui-datepicker-multi .ui-datepicker-group {
  float: left;
}

.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto 0.4em;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0;
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left;
}

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0;
}

/* RTL support */
.ui-datepicker-rtl {
  direction: rtl;
}

.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto;
}

.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
  float: right;
}

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px;
}

/* Icons */
.ui-datepicker .ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
  left: 0.5em;
  top: 0.3em;
}

.ui-dialog {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.2em;
  outline: 0;
}

.ui-dialog .ui-dialog-titlebar {
  padding: 0.4em 1em;
  position: relative;
}

.ui-dialog .ui-dialog-title {
  float: left;
  margin: 0.1em 0;
  white-space: nowrap;
  width: 90%;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ui-dialog .ui-dialog-titlebar-close {
  position: absolute;
  right: 0.3em;
  top: 50%;
  width: 20px;
  margin: -10px 0 0 0;
  padding: 1px;
  height: 20px;
}

.ui-dialog .ui-dialog-content {
  position: relative;
  border: 0;
  padding: 0.5em 1em;
  background: none;
  overflow: auto;
}

.ui-dialog .ui-dialog-buttonpane {
  text-align: left;
  border-width: 1px 0 0 0;
  background-image: none;
  margin-top: 0.5em;
  padding: 0.3em 1em 0.5em 0.4em;
}

.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
  float: right;
}

.ui-dialog .ui-dialog-buttonpane button {
  margin: 0.5em 0.4em 0.5em 0;
  cursor: pointer;
}

.ui-dialog .ui-resizable-n {
  height: 2px;
  top: 0;
}

.ui-dialog .ui-resizable-e {
  width: 2px;
  right: 0;
}

.ui-dialog .ui-resizable-s {
  height: 2px;
  bottom: 0;
}

.ui-dialog .ui-resizable-w {
  width: 2px;
  left: 0;
}

.ui-dialog .ui-resizable-se,
.ui-dialog .ui-resizable-sw,
.ui-dialog .ui-resizable-ne,
.ui-dialog .ui-resizable-nw {
  width: 7px;
  height: 7px;
}

.ui-dialog .ui-resizable-se {
  right: 0;
  bottom: 0;
}

.ui-dialog .ui-resizable-sw {
  left: 0;
  bottom: 0;
}

.ui-dialog .ui-resizable-ne {
  right: 0;
  top: 0;
}

.ui-dialog .ui-resizable-nw {
  left: 0;
  top: 0;
}

.ui-draggable .ui-dialog-titlebar {
  cursor: move;
}

.ui-draggable-handle {
  -ms-touch-action: none;
  touch-action: none;
}

.ui-resizable {
  position: relative;
}

.ui-resizable-handle {
  position: absolute;
  font-size: 0.1px;
  display: block;
  -ms-touch-action: none;
  touch-action: none;
}

.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
  display: none;
}

.ui-resizable-n {
  cursor: n-resize;
  height: 7px;
  width: 100%;
  top: -5px;
  left: 0;
}

.ui-resizable-s {
  cursor: s-resize;
  height: 7px;
  width: 100%;
  bottom: -5px;
  left: 0;
}

.ui-resizable-e {
  cursor: e-resize;
  width: 7px;
  right: -5px;
  top: 0;
  height: 100%;
}

.ui-resizable-w {
  cursor: w-resize;
  width: 7px;
  left: -5px;
  top: 0;
  height: 100%;
}

.ui-resizable-se {
  cursor: se-resize;
  width: 12px;
  height: 12px;
  right: 1px;
  bottom: 1px;
}

.ui-resizable-sw {
  cursor: sw-resize;
  width: 9px;
  height: 9px;
  left: -5px;
  bottom: -5px;
}

.ui-resizable-nw {
  cursor: nw-resize;
  width: 9px;
  height: 9px;
  left: -5px;
  top: -5px;
}

.ui-resizable-ne {
  cursor: ne-resize;
  width: 9px;
  height: 9px;
  right: -5px;
  top: -5px;
}

.ui-progressbar {
  height: 2em;
  text-align: left;
  overflow: hidden;
}

.ui-progressbar .ui-progressbar-value {
  margin: -1px;
  height: 100%;
}

.ui-progressbar .ui-progressbar-overlay {
  background: url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");
  height: 100%;
  filter: alpha(opacity=25); /* support: IE8 */
  opacity: 0.25;
}

.ui-progressbar-indeterminate .ui-progressbar-value {
  background-image: none;
}

.ui-selectable {
  -ms-touch-action: none;
  touch-action: none;
}

.ui-selectable-helper {
  position: absolute;
  z-index: 100;
  border: 1px dotted black;
}

.ui-selectmenu-menu {
  padding: 0;
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
  display: none;
}

.ui-selectmenu-menu .ui-menu {
  overflow: auto;
  overflow-x: hidden;
  padding-bottom: 1px;
}

.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
  font-size: 1em;
  font-weight: bold;
  line-height: 1.5;
  padding: 2px 0.4em;
  margin: 0.5em 0 0 0;
  height: auto;
  border: 0;
}

.ui-selectmenu-open {
  display: block;
}

.ui-selectmenu-text {
  display: block;
  margin-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ui-selectmenu-button.ui-button {
  text-align: left;
  white-space: nowrap;
  width: 14em;
}

.ui-selectmenu-icon.ui-icon {
  float: right;
  margin-top: 0;
}

.ui-slider {
  position: relative;
  text-align: left;
}

.ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 2;
  width: 1.2em;
  height: 1.2em;
  cursor: default;
  -ms-touch-action: none;
  touch-action: none;
}

.ui-slider .ui-slider-range {
  position: absolute;
  z-index: 1;
  font-size: 0.7em;
  display: block;
  border: 0;
  background-position: 0 0;
}

/* support: IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
  filter: inherit;
}

.ui-slider-horizontal {
  height: 0.8em;
}

.ui-slider-horizontal .ui-slider-handle {
  top: -0.3em;
  margin-left: -0.6em;
}

.ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 100%;
}

.ui-slider-horizontal .ui-slider-range-min {
  left: 0;
}

.ui-slider-horizontal .ui-slider-range-max {
  right: 0;
}

.ui-slider-vertical {
  width: 0.8em;
  height: 100px;
}

.ui-slider-vertical .ui-slider-handle {
  left: -0.3em;
  margin-left: 0;
  margin-bottom: -0.6em;
}

.ui-slider-vertical .ui-slider-range {
  left: 0;
  width: 100%;
}

.ui-slider-vertical .ui-slider-range-min {
  bottom: 0;
}

.ui-slider-vertical .ui-slider-range-max {
  top: 0;
}

.ui-sortable-handle {
  -ms-touch-action: none;
  touch-action: none;
}

.ui-spinner {
  position: relative;
  display: inline-block;
  overflow: hidden;
  padding: 0;
  vertical-align: middle;
}

.ui-spinner-input {
  border: none;
  background: none;
  color: inherit;
  padding: 0.222em 0;
  margin: 0.2em 0;
  vertical-align: middle;
  margin-left: 0.4em;
  margin-right: 2em;
}

.ui-spinner-button {
  width: 1.6em;
  height: 50%;
  font-size: 0.5em;
  padding: 0;
  margin: 0;
  text-align: center;
  position: absolute;
  cursor: default;
  display: block;
  overflow: hidden;
  right: 0;
}

/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button {
  border-top-style: none;
  border-bottom-style: none;
  border-right-style: none;
}

.ui-spinner-up {
  top: 0;
}

.ui-spinner-down {
  bottom: 0;
}

.ui-tabs {
  position: relative; /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
  padding: 0.2em;
}

.ui-tabs .ui-tabs-nav {
  margin: 0;
  padding: 0.2em 0.2em 0;
}

.ui-tabs .ui-tabs-nav li {
  list-style: none;
  float: left;
  position: relative;
  top: 0;
  margin: 1px 0.2em 0 0;
  border-bottom-width: 0;
  padding: 0;
  white-space: nowrap;
}

.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
  float: left;
  padding: 0.5em 1em;
  text-decoration: none;
}

.ui-tabs .ui-tabs-nav li.ui-tabs-active {
  margin-bottom: -1px;
  padding-bottom: 1px;
}

.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
  cursor: text;
}

.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
  cursor: pointer;
}

.ui-tabs .ui-tabs-panel {
  display: block;
  border-width: 0;
  padding: 1em 1.4em;
  background: none;
}

.ui-tooltip {
  padding: 8px;
  position: absolute;
  z-index: 9999;
  max-width: 300px;
}

body .ui-tooltip {
  border-width: 2px;
}

/* Component containers
----------------------------------*/
.ui-widget {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1em;
}

.ui-widget .ui-widget {
  font-size: 1em;
}

.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1em;
}

.ui-widget.ui-widget-content {
  border: 1px solid #c5c5c5;
}

.ui-widget-content {
  border: 1px solid #dddddd;
  background: #ffffff;
  color: #333333;
}

.ui-widget-content a {
  color: #333333;
}

.ui-widget-header {
  border: 1px solid #dddddd;
  background: #e9e9e9;
  color: #333333;
  font-weight: bold;
}

.ui-widget-header a {
  color: #333333;
}

/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  background-size: initial;
  border: 1px solid #c5c5c5;
  background: #f6f6f6;
  font-weight: normal;
  color: #454545;
}

.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
  color: #454545;
  text-decoration: none;
}

.ui-widget-content a.ui-state-default:hover, .ui-widget-content a.ui-state-default:focus {
  background-color: #dad55e;
}

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
  font-weight: normal;
  color: #2b2b2b;
  background-size: initial;
}

.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
a.ui-button:hover,
a.ui-button:focus {
  color: #2b2b2b;
  text-decoration: none;
}

.ui-visual-focus {
  box-shadow: 0 0 3px 1px rgb(94, 158, 214);
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
  border: 1px solid #4d609b;
  background: #39487d;
  font-weight: normal;
  color: #ffffff;
}

.ui-icon-background,
.ui-state-active .ui-icon-background {
  border: #4d609b;
  background-color: #ffffff;
}

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  color: #ffffff;
  text-decoration: none;
}

/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 1px solid #dad55e;
  background: #fffa90;
  color: #777620;
}

.ui-state-checked {
  border: 1px solid #dad55e;
  background: #fffa90;
}

.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
  color: #777620;
}

.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
  border: 1px solid #f1a899;
  background: #fddfdf;
  color: #5f3f3f;
}

.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
  color: #5f3f3f;
}

.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
  color: #5f3f3f;
}

.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
  font-weight: bold;
}

.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
  opacity: 0.7;
  filter: Alpha(Opacity=70); /* support: IE8 */
  font-weight: normal;
}

.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: 0.35;
  filter: Alpha(Opacity=35); /* support: IE8 */
  background-image: none;
}

.ui-state-disabled .ui-icon {
  filter: Alpha(Opacity=35); /* support: IE8 - See #6059 */
}

/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
  width: 16px;
  height: 16px;
}

.ui-icon,
.ui-widget-content .ui-icon {
  background-image: url("../images/icons/ui-icons_444444_256x240.png");
}

.ui-widget-header .ui-icon {
  background-image: url("../images/icons/ui-icons_444444_256x240.png");
}

.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon,
.ui-button:hover .ui-icon,
.ui-button:focus .ui-icon {
  background-image: url("../images/icons/ui-icons_555555_256x240.png");
}

.ui-state-active .ui-icon,
.ui-button:active .ui-icon {
  background-image: url("images/ui-icons_ffffff_256x240.png");
}

.ui-state-highlight .ui-icon,
.ui-button .ui-state-highlight.ui-icon {
  background-image: url("images/ui-icons_777620_256x240.png");
}

.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
  background-image: url("images/ui-icons_cc0000_256x240.png");
}

.ui-button .ui-icon {
  background-image: url("images/ui-icons_777777_256x240.png");
}

/* positioning */
.ui-icon-blank {
  background-position: 16px 16px;
}

.ui-icon-caret-1-n {
  background-position: 0 0;
}

.ui-icon-caret-1-ne {
  background-position: -16px 0;
}

.ui-icon-caret-1-e {
  background-position: -32px 0;
}

.ui-icon-caret-1-se {
  background-position: -48px 0;
}

.ui-icon-caret-1-s {
  background-position: -65px 0;
}

.ui-icon-caret-1-sw {
  background-position: -80px 0;
}

.ui-icon-caret-1-w {
  background-position: -96px 0;
}

.ui-icon-caret-1-nw {
  background-position: -112px 0;
}

.ui-icon-caret-2-n-s {
  background-position: -128px 0;
}

.ui-icon-caret-2-e-w {
  background-position: -144px 0;
}

.ui-icon-triangle-1-n {
  background-position: 0 -16px;
}

.ui-icon-triangle-1-ne {
  background-position: -16px -16px;
}

.ui-icon-triangle-1-e {
  background-position: -32px -16px;
}

.ui-icon-triangle-1-se {
  background-position: -48px -16px;
}

.ui-icon-triangle-1-s {
  background-position: -65px -16px;
}

.ui-icon-triangle-1-sw {
  background-position: -80px -16px;
}

.ui-icon-triangle-1-w {
  background-position: -96px -16px;
}

.ui-icon-triangle-1-nw {
  background-position: -112px -16px;
}

.ui-icon-triangle-2-n-s {
  background-position: -128px -16px;
}

.ui-icon-triangle-2-e-w {
  background-position: -144px -16px;
}

.ui-icon-arrow-1-n {
  background-position: 0 -32px;
}

.ui-icon-arrow-1-ne {
  background-position: -16px -32px;
}

.ui-icon-arrow-1-e {
  background-position: -32px -32px;
}

.ui-icon-arrow-1-se {
  background-position: -48px -32px;
}

.ui-icon-arrow-1-s {
  background-position: -65px -32px;
}

.ui-icon-arrow-1-sw {
  background-position: -80px -32px;
}

.ui-icon-arrow-1-w {
  background-position: -96px -32px;
}

.ui-icon-arrow-1-nw {
  background-position: -112px -32px;
}

.ui-icon-arrow-2-n-s {
  background-position: -128px -32px;
}

.ui-icon-arrow-2-ne-sw {
  background-position: -144px -32px;
}

.ui-icon-arrow-2-e-w {
  background-position: -160px -32px;
}

.ui-icon-arrow-2-se-nw {
  background-position: -176px -32px;
}

.ui-icon-arrowstop-1-n {
  background-position: -192px -32px;
}

.ui-icon-arrowstop-1-e {
  background-position: -208px -32px;
}

.ui-icon-arrowstop-1-s {
  background-position: -224px -32px;
}

.ui-icon-arrowstop-1-w {
  background-position: -240px -32px;
}

.ui-icon-arrowthick-1-n {
  background-position: 1px -48px;
}

.ui-icon-arrowthick-1-ne {
  background-position: -16px -48px;
}

.ui-icon-arrowthick-1-e {
  background-position: -32px -48px;
}

.ui-icon-arrowthick-1-se {
  background-position: -48px -48px;
}

.ui-icon-arrowthick-1-s {
  background-position: -64px -48px;
}

.ui-icon-arrowthick-1-sw {
  background-position: -80px -48px;
}

.ui-icon-arrowthick-1-w {
  background-position: -96px -48px;
}

.ui-icon-arrowthick-1-nw {
  background-position: -112px -48px;
}

.ui-icon-arrowthick-2-n-s {
  background-position: -128px -48px;
}

.ui-icon-arrowthick-2-ne-sw {
  background-position: -144px -48px;
}

.ui-icon-arrowthick-2-e-w {
  background-position: -160px -48px;
}

.ui-icon-arrowthick-2-se-nw {
  background-position: -176px -48px;
}

.ui-icon-arrowthickstop-1-n {
  background-position: -192px -48px;
}

.ui-icon-arrowthickstop-1-e {
  background-position: -208px -48px;
}

.ui-icon-arrowthickstop-1-s {
  background-position: -224px -48px;
}

.ui-icon-arrowthickstop-1-w {
  background-position: -240px -48px;
}

.ui-icon-arrowreturnthick-1-w {
  background-position: 0 -64px;
}

.ui-icon-arrowreturnthick-1-n {
  background-position: -16px -64px;
}

.ui-icon-arrowreturnthick-1-e {
  background-position: -32px -64px;
}

.ui-icon-arrowreturnthick-1-s {
  background-position: -48px -64px;
}

.ui-icon-arrowreturn-1-w {
  background-position: -64px -64px;
}

.ui-icon-arrowreturn-1-n {
  background-position: -80px -64px;
}

.ui-icon-arrowreturn-1-e {
  background-position: -96px -64px;
}

.ui-icon-arrowreturn-1-s {
  background-position: -112px -64px;
}

.ui-icon-arrowrefresh-1-w {
  background-position: -128px -64px;
}

.ui-icon-arrowrefresh-1-n {
  background-position: -144px -64px;
}

.ui-icon-arrowrefresh-1-e {
  background-position: -160px -64px;
}

.ui-icon-arrowrefresh-1-s {
  background-position: -176px -64px;
}

.ui-icon-arrow-4 {
  background-position: 0 -80px;
}

.ui-icon-arrow-4-diag {
  background-position: -16px -80px;
}

.ui-icon-extlink {
  background-position: -32px -80px;
}

.ui-icon-newwin {
  background-position: -48px -80px;
}

.ui-icon-refresh {
  background-position: -64px -80px;
}

.ui-icon-shuffle {
  background-position: -80px -80px;
}

.ui-icon-transfer-e-w {
  background-position: -96px -80px;
}

.ui-icon-transferthick-e-w {
  background-position: -112px -80px;
}

.ui-icon-folder-collapsed {
  background-position: 0 -96px;
}

.ui-icon-folder-open {
  background-position: -16px -96px;
}

.ui-icon-document {
  background-position: -32px -96px;
}

.ui-icon-document-b {
  background-position: -48px -96px;
}

.ui-icon-note {
  background-position: -64px -96px;
}

.ui-icon-mail-closed {
  background-position: -80px -96px;
}

.ui-icon-mail-open {
  background-position: -96px -96px;
}

.ui-icon-suitcase {
  background-position: -112px -96px;
}

.ui-icon-comment {
  background-position: -128px -96px;
}

.ui-icon-person {
  background-position: -144px -96px;
}

.ui-icon-print {
  background-position: -160px -96px;
}

.ui-icon-trash {
  background-position: -176px -96px;
}

.ui-icon-locked {
  background-position: -192px -96px;
}

.ui-icon-unlocked {
  background-position: -208px -96px;
}

.ui-icon-bookmark {
  background-position: -224px -96px;
}

.ui-icon-tag {
  background-position: -240px -96px;
}

.ui-icon-home {
  background-position: 0 -112px;
}

.ui-icon-flag {
  background-position: -16px -112px;
}

.ui-icon-calendar {
  background-position: -32px -112px;
}

.ui-icon-cart {
  background-position: -48px -112px;
}

.ui-icon-pencil {
  background-position: -64px -112px;
}

.ui-icon-clock {
  background-position: -80px -112px;
}

.ui-icon-disk {
  background-position: -96px -112px;
}

.ui-icon-calculator {
  background-position: -112px -112px;
}

.ui-icon-zoomin {
  background-position: -128px -112px;
}

.ui-icon-zoomout {
  background-position: -144px -112px;
}

.ui-icon-search {
  background-position: -160px -112px;
}

.ui-icon-wrench {
  background-position: -176px -112px;
}

.ui-icon-gear {
  background-position: -192px -112px;
}

.ui-icon-heart {
  background-position: -208px -112px;
}

.ui-icon-star {
  background-position: -224px -112px;
}

.ui-icon-link {
  background-position: -240px -112px;
}

.ui-icon-cancel {
  background-position: 0 -128px;
}

.ui-icon-plus {
  background-position: -16px -128px;
}

.ui-icon-plusthick {
  background-position: -32px -128px;
}

.ui-icon-minus {
  background-position: -48px -128px;
}

.ui-icon-minusthick {
  background-position: -64px -128px;
}

.ui-icon-close {
  background-position: -80px -128px;
}

.ui-icon-closethick {
  background-position: -96px -128px;
}

.ui-icon-key {
  background-position: -112px -128px;
}

.ui-icon-lightbulb {
  background-position: -128px -128px;
}

.ui-icon-scissors {
  background-position: -144px -128px;
}

.ui-icon-clipboard {
  background-position: -160px -128px;
}

.ui-icon-copy {
  background-position: -176px -128px;
}

.ui-icon-contact {
  background-position: -192px -128px;
}

.ui-icon-image {
  background-position: -208px -128px;
}

.ui-icon-video {
  background-position: -224px -128px;
}

.ui-icon-script {
  background-position: -240px -128px;
}

.ui-icon-alert {
  background-position: 0 -144px;
}

.ui-icon-info {
  background-position: -16px -144px;
}

.ui-icon-notice {
  background-position: -32px -144px;
}

.ui-icon-help {
  background-position: -48px -144px;
}

.ui-icon-check {
  background-position: -64px -144px;
}

.ui-icon-bullet {
  background-position: -80px -144px;
}

.ui-icon-radio-on {
  background-position: -96px -144px;
}

.ui-icon-radio-off {
  background-position: -112px -144px;
}

.ui-icon-pin-w {
  background-position: -128px -144px;
}

.ui-icon-pin-s {
  background-position: -144px -144px;
}

.ui-icon-play {
  background-position: 0 -160px;
}

.ui-icon-pause {
  background-position: -16px -160px;
}

.ui-icon-seek-next {
  background-position: -32px -160px;
}

.ui-icon-seek-prev {
  background-position: -48px -160px;
}

.ui-icon-seek-end {
  background-position: -64px -160px;
}

.ui-icon-seek-start {
  background-position: -80px -160px;
}

/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first {
  background-position: -80px -160px;
}

.ui-icon-stop {
  background-position: -96px -160px;
}

.ui-icon-eject {
  background-position: -112px -160px;
}

.ui-icon-volume-off {
  background-position: -128px -160px;
}

.ui-icon-volume-on {
  background-position: -144px -160px;
}

.ui-icon-power {
  background-position: 0 -176px;
}

.ui-icon-signal-diag {
  background-position: -16px -176px;
}

.ui-icon-signal {
  background-position: -32px -176px;
}

.ui-icon-battery-0 {
  background-position: -48px -176px;
}

.ui-icon-battery-1 {
  background-position: -64px -176px;
}

.ui-icon-battery-2 {
  background-position: -80px -176px;
}

.ui-icon-battery-3 {
  background-position: -96px -176px;
}

.ui-icon-circle-plus {
  background-position: 0 -192px;
}

.ui-icon-circle-minus {
  background-position: -16px -192px;
}

.ui-icon-circle-close {
  background-position: -32px -192px;
}

.ui-icon-circle-triangle-e {
  background-position: -48px -192px;
}

.ui-icon-circle-triangle-s {
  background-position: -64px -192px;
}

.ui-icon-circle-triangle-w {
  background-position: -80px -192px;
}

.ui-icon-circle-triangle-n {
  background-position: -96px -192px;
}

.ui-icon-circle-arrow-e {
  background-position: -112px -192px;
}

.ui-icon-circle-arrow-s {
  background-position: -128px -192px;
}

.ui-icon-circle-arrow-w {
  background-position: -144px -192px;
}

.ui-icon-circle-arrow-n {
  background-position: -160px -192px;
}

.ui-icon-circle-zoomin {
  background-position: -176px -192px;
}

.ui-icon-circle-zoomout {
  background-position: -192px -192px;
}

.ui-icon-circle-check {
  background-position: -208px -192px;
}

.ui-icon-circlesmall-plus {
  background-position: 0 -208px;
}

.ui-icon-circlesmall-minus {
  background-position: -16px -208px;
}

.ui-icon-circlesmall-close {
  background-position: -32px -208px;
}

.ui-icon-squaresmall-plus {
  background-position: -48px -208px;
}

.ui-icon-squaresmall-minus {
  background-position: -64px -208px;
}

.ui-icon-squaresmall-close {
  background-position: -80px -208px;
}

.ui-icon-grip-dotted-vertical {
  background-position: 0 -224px;
}

.ui-icon-grip-dotted-horizontal {
  background-position: -16px -224px;
}

.ui-icon-grip-solid-vertical {
  background-position: -32px -224px;
}

.ui-icon-grip-solid-horizontal {
  background-position: -48px -224px;
}

.ui-icon-gripsmall-diagonal-se {
  background-position: -64px -224px;
}

.ui-icon-grip-diagonal-se {
  background-position: -80px -224px;
}

/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
  border-top-left-radius: 3px;
}

.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
  border-top-right-radius: 3px;
}

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
  border-bottom-left-radius: 3px;
}

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
  border-bottom-right-radius: 3px;
}

/* Overlays */
.ui-widget-overlay {
  background: #aaaaaa;
  opacity: 0.3;
  filter: Alpha(Opacity=30); /* support: IE8 */
}

.ui-widget-shadow {
  -webkit-box-shadow: 0px 0px 5px #666666;
  box-shadow: 0px 0px 5px #666666;
}

@media (min-width: 1200px) {
  .busqueda ol li.grid-item.destacar .txt-over,
  .eventos-hijos ol li.grid-item.destacar .txt-over {
    height: 250px;
    overflow: hidden;
  }
}
.busqueda ol li.grid-item.destacar .txt-over::after,
.eventos-hijos ol li.grid-item.destacar .txt-over::after {
  background: linear-gradient(to bottom, rgba(86, 62, 27, 0) 0%, rgba(86, 62, 27, 0.7) 55%, #563e1b 100%);
}
.busqueda ol li.grid-item.destacar .basic,
.eventos-hijos ol li.grid-item.destacar .basic {
  background: rgb(86, 62, 27);
}
.busqueda ol li.grid-item.destacar .titulo-h2::after,
.eventos-hijos ol li.grid-item.destacar .titulo-h2::after {
  background: linear-gradient(to bottom, rgba(86, 62, 27, 0) 0%, rgba(86, 62, 27, 0.2) 25%, rgba(86, 62, 27, 0.8) 75%, #563e1b 90%, rgb(86, 62, 27) 100%);
}
.busqueda ol li.grid-item .txt-over.etiqueta,
.eventos-hijos ol li.grid-item .txt-over.etiqueta {
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  box-shadow: inset 0 0 0 8px rgb(233, 84, 153);
  overflow: hidden;
  padding: 0.35rem;
}
.busqueda ol li.grid-item .txt-over.etiqueta img,
.eventos-hijos ol li.grid-item .txt-over.etiqueta img {
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  overflow: hidden;
}
.busqueda .descripcion,
.eventos-hijos .descripcion {
  display: inline-block;
  max-width: 100%;
  padding: 1rem;
  width: 800px;
}
.busqueda .descripcion img,
.eventos-hijos .descripcion img {
  height: auto !important;
  margin: 0 1.5rem 0.5rem 0;
  max-width: 100%;
}
.busqueda .imagen-busqueda,
.eventos-hijos .imagen-busqueda {
  margin-bottom: 1rem;
  position: relative;
}
.busqueda .resultado-texto,
.eventos-hijos .resultado-texto {
  align-items: center;
  display: flex;
  margin: 1rem auto;
}

.grid-item a {
  position: relative;
  display: block;
  outline: 1px dotted transparent !important;
  z-index: 3;
  transition: background 0.3s ease;
}
.grid-item a h2 {
  color: #ffffff;
  font-family: "Times New Roman";
  font-size: 1.6rem;
  line-height: 100%;
  margin: 0 1rem;
  padding: 0;
  transform: scaleY(1.1);
  text-align: left;
  text-shadow: 0 0 1px rgb(223, 248, 44);
  transition: 0.3s;
  z-index: 3;
  position: relative;
}
.grid-item a h2::before {
  display: none;
}
.grid-item a .finalizado_estado {
  bottom: 1px;
  color: #faebcc;
  font-size: 0.9rem;
  padding: 2px 4px;
  position: absolute;
  right: 2px;
  text-align: right;
  z-index: 99;
}
.grid-item a .titulo-h2 {
  position: relative;
  margin-top: -1.8rem;
}
.grid-item a .titulo-h2::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 120px;
  top: 0;
  margin-top: -91px;
  z-index: 1;
  background: linear-gradient(to bottom, rgba(164, 106, 32, 0) 0%, rgba(164, 106, 32, 0.2) 25%, rgba(164, 106, 32, 0.8) 75%, rgba(164, 106, 32, 0.9) 90%, rgb(164, 106, 32) 100%);
}
.grid-item a .txt-over {
  position: relative;
  text-align: center;
  overflow: hidden;
}
.grid-item a .txt-over img.principal {
  display: block;
  height: auto;
  opacity: 0;
  width: 100%;
  transition: filter 0.2s ease, transform 0.5s ease-in-out;
}
.grid-item a .txt-over img.principal.loaded {
  opacity: 1;
}
.grid-item a .txt-over .info-num,
.grid-item a .txt-over .festival-ene {
  background-color: rgb(86, 62, 27);
  border-bottom-right-radius: 20px;
  color: #ffffff;
  font-size: 0.9rem;
  left: 0;
  line-height: normal;
  padding: 3px 16px;
  position: absolute;
  text-shadow: none;
  top: 0;
  z-index: 1;
}
.grid-item a .txt-over .festival-ene {
  background-color: rgb(233, 84, 153);
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 0;
  left: initial;
  right: 0;
}
.grid-item a .txt-over .texto_piefoto {
  color: #906a6a;
  font-size: 0.7rem;
  margin-right: 5px;
  margin-top: 2px;
  text-align: right;
}
.grid-item a .txt-over .cancelado,
.grid-item a .txt-over .completo {
  background-color: #ffffff;
  left: 50%;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: 50%;
  transform: translate(-50%, -50%);
  width: max-content;
}
.grid-item a .txt-over .cancelado span,
.grid-item a .txt-over .completo span {
  background: rgba(0, 0, 0, 0.7);
  font-weight: bold;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.7);
  position: relative;
  z-index: 2;
}
.grid-item a .txt-over .cancelado span::after,
.grid-item a .txt-over .completo span::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 30px;
  top: 0;
  left: 0;
  backdrop-filter: blur(2px);
  z-index: -1;
}
.grid-item a .txt-over .cancelado {
  color: rgb(0, 78, 120);
}
.grid-item a .txt-over .cancelado span {
  background: rgba(255, 255, 255, 0.8);
}
.grid-item a:hover, .grid-item a:focus {
  opacity: 1;
  text-decoration: none;
}
.grid-item a:hover .titulo-h2::after, .grid-item a:focus .titulo-h2::after {
  content: "";
  z-index: 1;
  background: linear-gradient(to bottom, rgba(140, 107, 59, 0) 0%, rgba(140, 107, 59, 0.4) 25%, rgba(140, 107, 59, 0.8) 75%, rgba(140, 107, 59, 0.9) 90%, rgb(140, 107, 59) 100%);
}
.grid-item a:hover .txt-over img.principal, .grid-item a:focus .txt-over img.principal {
  filter: contrast(120%) brightness(110%);
  transform: scale(1.05);
}
.grid-item a:hover .txt-over::after, .grid-item a:focus .txt-over::after {
  background: linear-gradient(to bottom, rgba(140, 107, 59, 0) 0%, rgba(140, 107, 59, 0.8) 80%, rgba(140, 107, 59, 0.9) 90%, rgb(140, 107, 59) 100%);
}
.grid-item a:hover .fecha-hora, .grid-item a:focus .fecha-hora {
  opacity: 1;
}
.grid-item a:hover h2,
.grid-item a:hover .subtitulo,
.grid-item a:hover p.subtitulo, .grid-item a:focus h2,
.grid-item a:focus .subtitulo,
.grid-item a:focus p.subtitulo {
  color: #ffffff;
  opacity: 0.95;
}
.grid-item a:hover h2, .grid-item a:focus h2 {
  text-shadow: 0 0 1px #111;
}
.grid-item a:hover .texto_piefoto, .grid-item a:focus .texto_piefoto {
  text-decoration: none;
}
.grid-item a:hover .texto_piefoto span, .grid-item a:focus .texto_piefoto span {
  background: none;
}
.grid-item .basic .subtitulo {
  font-size: 1rem;
  line-height: normal;
  margin: 0.25rem 1rem;
  opacity: 0.7;
  text-align: justify;
  font-family: "Lato", sans-serif;
}
.grid-item .txt-over.canc-vend {
  background: #ffffff;
  display: block;
  line-height: 0;
  position: relative;
}
.grid-item .infolittle {
  height: 100%;
}
.grid-item .basic {
  background: rgb(164, 106, 32);
  border-radius: 20px;
  border-top-left-radius: 23px;
  border-top-right-radius: 23px;
  display: flex;
  flex-direction: column;
  min-height: 400px;
  height: 100%;
  min-height: 250px;
  overflow: hidden;
  transition: background-color 0.3s ease;
  container-type: inline-size;
  container-name: card-basic;
}
.grid-item .basic:has(.eventolite:hover) {
  background-color: rgb(140, 107, 59);
}
.grid-item .basic2 {
  flex: 1 1 auto;
}
.grid-item .final {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: auto 1rem;
}
.grid-item .fecha-hora {
  position: relative;
  display: flex;
  justify-content: flex-start;
}
.grid-item .fecha-hora .flex-1 {
  flex: 1;
}
.grid-item .fecha-hora p,
.grid-item .fecha-hora .info-fecha {
  bottom: 0.25rem;
  color: #ffffff;
  font-family: "Lato", sans-serif;
  font-size: 0.9rem;
  line-height: normal;
  margin: 0 1rem 1rem 1rem;
  margin-right: 15px;
  opacity: 0.95;
  padding: 0;
}
.grid-item .fecha-hora ul li {
  font-size: 1rem;
}
.grid-item .bloque_precio_fecha {
  margin: 0;
}
.grid-item .bloque_precio_fecha p.gratuito {
  font-size: 1rem;
  margin-right: 1rem;
  text-align: left;
}
.grid-item .bloque_precio_fecha .fecha-hora p {
  font-size: 1rem;
  text-align: right;
}
.grid-item .bloque_precio_fecha .fecha-hora .coma {
  display: none;
}
.grid-item .lugar {
  color: #111;
  font-size: 0.9rem;
  font-weight: bold;
  line-height: 0.9rem;
  margin-bottom: 0.5rem;
}
.grid-item .lugar ul {
  display: flex;
  flex-direction: column;
  list-style: none;
  padding: 0;
}
.grid-item .lugar ul li {
  color: rgba(255, 255, 255, 0.8);
  font-family: "Lato", sans-serif;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: normal;
  margin: 0.5rem 1rem;
  width: auto;
}
.grid-item .lugar ul li:first-of-type {
  margin-top: 0;
}
.grid-item .lugar ul li:last-of-type {
  margin-bottom: 0;
}
.grid-item ul.cat {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  height: 40px;
  justify-content: flex-start;
  list-style: none;
  margin-bottom: 0.25rem;
  padding: 0;
}
.grid-item ul.cat li {
  font-family: "Lato", sans-serif;
  line-height: 1rem;
  margin: 1px;
  width: auto;
}
.grid-item ul.cat li a {
  display: inline;
  font-family: "Lato", sans-serif;
  font-size: 0.88rem;
  font-weight: bold;
  opacity: 0.8;
}
@media (max-width: 991px) {
  .grid-item ul.cat li a {
    font-size: 0.8rem;
  }
}
.grid-item ul.cat li a:hover, .grid-item ul.cat li a:focus {
  color: #faebcc !important;
  opacity: 1;
}
.grid-item ul.cat li a:focus {
  outline-offset: 3px;
}
.grid-item ul.cat li a.festival {
  color: #faebcc !important;
}
.grid-item ul.cat li a.festival:hover, .grid-item ul.cat li a.festival:focus {
  color: #ffffff !important;
}
.grid-item ul.accesibilidad {
  display: flex;
  justify-content: flex-end;
  list-style: none;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}
.grid-item ul.accesibilidad li {
  color: #ffffff;
  font-size: 1.5rem;
  padding: 0 2px;
  width: auto;
}
.downloadpdf {
  text-align: right;
  font-weight: bold;
}
@media (max-width: 992px) {
  .downloadpdf {
    text-align: left;
  }
}
.downloadpdf a {
  text-decoration: none;
}
.downloadpdf a span.size {
  font-weight: normal;
  font-size: 0.75rem;
}
.downloadpdf a span.txtdownload {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 85%, rgb(0, 78, 120) 91%, rgb(0, 78, 120) 100%, rgba(0, 0, 0, 0) 101%);
  text-shadow: 0 -1px #fff, 1px 0 #f9f9f9, 0 1px #f9f9f9, -1px 0 #f9f9f9;
}
.downloadpdf a:hover, .downloadpdf a:focus {
  color: #faebcc;
}
.downloadpdf a:hover span.txtdownload, .downloadpdf a:focus span.txtdownload {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 85%, #111 91%, #111 100%, rgba(0, 0, 0, 0) 101%);
  text-shadow: 0 -1px #f9f9f9, 1px 0 #f9f9f9, 0 1px #f9f9f9, -1px 0 #f9f9f9;
}
@media screen and (max-width: 701px) {
  .downloadpdf body {
    background: #fefbfc;
  }
  .downloadpdf .grid-item {
    padding: 0;
  }
  .downloadpdf .grid-item .basic {
    border-bottom: 0;
  }
  .downloadpdf ol#grid > li {
    background: #fff;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  }
  .downloadpdf ol#grid > li a h2 {
    display: block;
    margin-bottom: 0.5rem;
    padding-top: 0.25rem;
    text-align: center;
  }
}

.arboleventos {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  justify-content: space-around;
  align-items: flex-start;
  list-style: none;
}
.arboleventos > li {
  width: 50%;
  flex: 1 1 auto;
  padding: 2rem 0;
}
.arboleventos > li > ul {
  margin-top: -1rem;
}
.arboleventos .fecha-hora {
  font-family: "century-gothic", sans-serif;
  font-size: 0.8rem;
  margin-bottom: 0.5rem;
}
.arboleventos li {
  min-height: 130px;
}
.arboleventos li h2 {
  display: inline-block;
  font-family: "century-gothic", sans-serif;
  font-size: 1.1rem;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 1.4rem;
}
.arboleventos li h3, .arboleventos li h4 {
  font-size: 1rem;
  font-family: "century-gothic", sans-serif;
  line-height: normal;
  font-weight: bold;
  text-transform: uppercase;
}
.arboleventos li .info {
  font-size: clamp(0.9rem, 1.2vw, 1rem);
  color: #111;
}
.arboleventos li ul li {
  min-height: 0;
}
.arboleventos li ul li ul {
  margin-left: 0;
}
.arboleventos .fecha-lite {
  font-size: 0.75rem;
  font-weight: normal;
}
.arboleventos li ul li .titulo {
  font-size: 1rem;
  font-weight: 600;
  color: #111;
}
.arboleventos .bl-arbol {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  text-decoration: none;
}
.arboleventos .bl-arbol .subtitulo {
  text-decoration: none;
  font-family: "century-gothic", sans-serif;
  font-size: 0.9rem;
  letter-spacing: 0.1em;
  font-weight: normal;
  margin-bottom: 0.25rem;
}
.arboleventos .bl-arbol .titulo {
  font-size: 1.3rem;
  font-weight: 600;
  color: #111;
  line-height: normal;
}
.arboleventos .bl-arbol .lugar {
  font-family: "century-gothic", sans-serif;
  font-size: 0.75rem;
  font-weight: normal;
  padding: 0 1rem;
}
.arboleventos .bl-arbol .lugar ul {
  padding: 0;
  list-style: none;
  display: inline;
  margin: 0;
  display: inline-flex;
  flex-direction: column;
}
.arboleventos .bl-arbol .lugar ul li {
  font-size: 0.8rem;
}
.arboleventos .bl-arbol .subtitulo {
  font-size: 0.8rem;
  position: relative;
  display: block;
}
.arboleventos .bl-arbol .imagen {
  transition: 0.2s;
  border-radius: 15px;
  text-align: center;
  display: flex;
  align-content: center;
  flex-wrap: nowrap;
  justify-content: center;
  height: 120px;
  width: 150px;
  position: relative;
  z-index: 1;
  flex: none;
  overflow: hidden;
}
.arboleventos .bl-arbol .imagen img {
  position: absolute;
  height: 120px;
  width: 150px;
  z-index: 2;
  object-fit: cover;
  object-position: bottom;
  transition: 0.2s;
  border-radius: 15px;
}
.arboleventos .bl-arbol ul li a:hover, .arboleventos .bl-arbol ul li a:focus {
  text-decoration: underline;
}
.arboleventos .bl-arbol:hover, .arboleventos .bl-arbol:focus {
  transition: 0.2s;
}
.arboleventos .bl-arbol:hover h2, .arboleventos .bl-arbol:focus h2 {
  text-decoration: underline;
}
.arboleventos .bl-arbol:hover .imagen img, .arboleventos .bl-arbol:focus .imagen img {
  transform: scale(1.05, 1.05);
}
.arboleventos li:hover .imagen {
  outline-color: transparent;
}

@media (max-width: 1200px) {
  .arboleventos > li {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .arboleventos > li > ul {
    margin-top: -1rem;
  }
  .arboleventos > li {
    margin-bottom: 1.5rem;
  }
  .arboleventos .titulo.px-3 {
    margin-top: 0.5rem;
  }
  .arboleventos a {
    align-items: flex-start;
  }
  .arboleventos li ul {
    margin-left: 10px;
  }
  .arboleventos a .imagen,
  .arboleventos a .imagen img {
    width: 90px;
    height: 90px;
  }
  .arboleventos li ul li .titulo,
  .arboleventos a .titulo {
    font-size: 1.1rem;
  }
}
@media (max-width: 991px) {
  .content-block {
    position: relative;
    overflow: hidden;
  }
  .text-content {
    max-height: 300px; /* Limita la altura del texto visible */
    overflow: hidden;
    padding-bottom: 70px; /* Espacio adicional */
  }
  .gradient-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 300px;
    background: linear-gradient(to bottom, transparent, white); /* Degradado hasta el fondo blanco */
    display: none;
  }
  /* Para cuando el contenido se expande */
  .text-content.expanded {
    max-height: none; /* Permitir que el contenido se expanda */
  }
  .read-more {
    margin-top: 10px;
    display: none; /* Inicialmente oculto */
    position: absolute;
    bottom: 0.2rem;
    z-index: 99;
    background: #fff;
    color: #0C0C0D;
    left: auto;
    right: auto;
    width: 100%;
  }
  .read-more:hover, .read-more:focus {
    background: #fff;
    color: #d62b2b;
  }
}
@media (min-width: 992px) {
  .content-block {
    max-height: none; /* Sin limitación de altura */
  }
  .text-content {
    max-height: none; /* Sin limitación de altura */
  }
  .gradient-overlay {
    display: none; /* El degradado no se aplica */
  }
  .read-more {
    display: none; /* El botón "Leer más" no se muestra */
  }
}
.busqueda {
  background-color: #fff;
  color: #39487d;
  position: relative;
}
.busqueda h1 {
  font-family: "Times New Roman", serif;
  font-size: clamp(2rem, 4vw, 4.5rem);
  color: #39487d;
  line-height: normal;
}
@media (max-width: 991px) {
  .busqueda h1 {
    text-align: center;
    padding-top: 1.2rem;
  }
}
.busqueda h1 span::first-letter {
  text-transform: uppercase;
}
.busqueda h3, .busqueda h4, .busqueda p, .busqueda a, .busqueda ul li {
  color: #0C0C0D;
}
.busqueda p {
  text-align: justify;
  hyphens: auto;
}
.busqueda .descripcion p.modoh2 {
  font-family: "Lato", sans-serif;
  font-size: 1.5rem;
  font-weight: bold;
}
.busqueda .descripcion p.modoh2 span {
  color: #A26839 !important;
}
.busqueda .descripcion p.modoh1 {
  font-size: 2rem;
  font-size: clamp(1.8rem, 5vw, 4.5rem);
  font-family: "Times New Roman";
  color: #39487d;
}
.busqueda .descripcion p.modoh3 {
  font-size: 1.6rem;
  font-weight: bold;
}
.busqueda .descripcion p.modoh4 {
  font-size: 1.4rem;
  font-weight: bold;
}
.busqueda .descripcion p.normal {
  font-size: 1.1rem;
  font-weight: normal;
  text-align: justify;
}
.busqueda .descripcion p.junto {
  font-size: 1.1rem;
  font-weight: normal;
  margin: 0 !important;
}
.busqueda .descripcion p a {
  font-family: "Lato", sans-serif;
  text-decoration: none;
}
.busqueda .descripcion p a:hover, .busqueda .descripcion p a:focus {
  background-color: #0C0C0D;
}
.busqueda #grid h3, .busqueda #grid h4, .busqueda #grid p, .busqueda #grid a, .busqueda #grid ul li {
  color: #fff;
}
.busqueda h2 {
  color: #39487d;
}
.busqueda ol li {
  position: relative;
}

.img_listado_actividades {
  width: 100%;
  max-height: 340px;
  left: 0;
  top: 0;
  object-fit: cover;
  object-position: top;
}

@media (max-width: 991px) {
  .contenedor.filtrado {
    padding: 0;
    padding-left: 0.5rem;
  }
}
.categorias {
  align-items: center;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  list-style: none;
  max-width: 100%;
  margin: 0.5rem 0;
  padding: 0;
  gap: 5px;
}
.categorias li {
  list-style: none;
}
.categorias li > a {
  border-radius: 20px;
  border-style: solid;
  border-width: 1px;
  color: #393859;
  background-color: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(3px);
  display: inline-block;
  font-size: 0.85rem;
  line-height: inherit;
  padding: 6px 13px;
  transition: all 0.3s;
  word-wrap: break-word;
  text-decoration: none;
}
.categorias li > a:hover, .categorias li > a:focus {
  background-color: rgba(255, 196, 196, 0.8);
  border-color: #cbb59b;
  color: #111;
}
.categorias li a.disabled {
  background-color: rgba(255, 255, 255, 0.8);
  color: #999;
  pointer-events: none;
  border-color: #eee;
  display: none;
}
.categorias li a.select {
  background-color: #393859;
  border-color: #393859;
  color: #fff;
}
@media (max-width: 991px) {
  .categorias {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    width: 100%;
    padding-bottom: 0.25rem;
  }
  .categorias li {
    flex: 0 0 auto;
  }
  .categorias li > a {
    white-space: nowrap;
    word-wrap: normal;
  }
}

.prensa {
  background-color: #fff;
  color: #39487d;
  position: relative;
}
.prensa h1 {
  color: #39487d;
  font-family: "Times New Roman", serif;
  font-size: clamp(2rem, 5vw, 3.5rem);
}
.prensa h1 span::first-letter {
  text-transform: uppercase;
}
.prensa h2 {
  font-size: clamp(1.5rem, 2.5vw, 2.1rem);
  color: #39487d;
}
.prensa h3, .prensa h4, .prensa p, .prensa ul li {
  color: #0C0C0D;
}
.prensa a {
  color: #A26839;
}
.prensa .card {
  border-radius: 20px;
}
.prensa .nav-tabs .nav-link.active {
  border: none;
  border-bottom: 3px solid #A26839;
}
.prensa .nav-tabs .nav-link {
  border-radius: 0;
  border: none;
  border-bottom: 2px solid transparent;
}
.prensa .nav-tabs .nav-link:hover, .prensa .nav-tabs .nav-link:focus {
  color: #0C0C0D;
  border-color: #ebae36;
}
.prensa .card-header {
  background-color: transparent;
}
.prensa .pestanas-prensa {
  margin-top: 0.8rem;
}
.prensa ul.notas, .prensa ul.listado-galeria {
  border-radius: 20px;
}
.prensa ul.notas .fecha, .prensa ul.listado-galeria .fecha {
  opacity: 0.75;
  font-family: "Lato", sans-serif;
  letter-spacing: 1px;
}
.prensa ul.notas .fecha::first-letter, .prensa ul.listado-galeria .fecha::first-letter {
  text-transform: uppercase;
}
.prensa ul.notas li img.img-notas, .prensa ul.listado-galeria li img.img-notas {
  width: 100%;
  border-radius: 20px;
}
.prensa ul.notas li .galeria-img, .prensa ul.listado-galeria li .galeria-img {
  overflow: hidden;
  position: relative;
  display: flex;
  justify-content: center;
  flex-direction: column;
  font-size: 0.9rem;
  font-family: "Lato", sans-serif;
  letter-spacing: 1px;
}
.prensa ul.notas li .galeria-img img, .prensa ul.listado-galeria li .galeria-img img {
  object-position: center;
  object-fit: cover;
  width: 100%;
  border-radius: 20px;
}
@media (min-width: 992px) {
  .prensa ul.notas li .galeria-img img, .prensa ul.listado-galeria li .galeria-img img {
    height: 300px;
  }
}
.prensa ul.notas li .ico, .prensa ul.listado-galeria li .ico {
  background-color: #ddd;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 200px;
}
.prensa ul.notas li .ico img.img-notas-ico, .prensa ul.listado-galeria li .ico img.img-notas-ico {
  max-width: 100%;
  width: 60px;
  opacity: 0.8;
}
.prensa ul.notas li button.ver-ocultar, .prensa ul.listado-galeria li button.ver-ocultar {
  color: #fff;
  background-color: #0C0C0D;
  border: 1px solid #0C0C0D;
}
.prensa ul.notas li button.ver-ocultar img.img-show-ico, .prensa ul.listado-galeria li button.ver-ocultar img.img-show-ico {
  margin-right: 3px;
  filter: invert(1);
}
.prensa ul.notas li button.ver-ocultar:hover, .prensa ul.notas li button.ver-ocultar:focus, .prensa ul.listado-galeria li button.ver-ocultar:hover, .prensa ul.listado-galeria li button.ver-ocultar:focus {
  background-color: #fff;
  color: #0C0C0D;
}
.prensa ul.notas li button.ver-ocultar:hover img.img-show-ico, .prensa ul.notas li button.ver-ocultar:focus img.img-show-ico, .prensa ul.listado-galeria li button.ver-ocultar:hover img.img-show-ico, .prensa ul.listado-galeria li button.ver-ocultar:focus img.img-show-ico {
  filter: invert(0);
}
.prensa ul.notas li a.btn-dark img.img-notas-ico, .prensa ul.listado-galeria li a.btn-dark img.img-notas-ico {
  filter: invert(1);
}
.prensa ul.notas li a.btn-dark img.img-notas-ico:hover, .prensa ul.notas li a.btn-dark img.img-notas-ico:focus, .prensa ul.listado-galeria li a.btn-dark img.img-notas-ico:hover, .prensa ul.listado-galeria li a.btn-dark img.img-notas-ico:focus {
  filter: invert(0);
}

.galeria-prensa {
  margin-top: 2rem;
  width: calc(100% + 30px);
}

.masonry {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.masonry .grid-item {
  margin: 0.5rem 0;
  position: relative;
  width: 100%;
  background-color: #fff;
  border-radius: 20px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3);
  overflow: hidden;
}
@media (min-width: 992px) {
  .masonry .grid-item {
    width: calc(50% - 30px);
    margin: 0.5rem 15px;
    min-height: 390px;
  }
}
@media (min-width: 1200px) {
  .masonry .grid-item {
    width: calc(33.3% - 20px);
    margin: 0.5rem 10px;
    min-height: 390px;
  }
}
.masonry .grid-item > .link {
  display: block;
}
.masonry .grid-item img {
  border-radius: 0;
  object-fit: cover;
}
.masonry .grid-item p {
  width: 100%;
  margin: 0;
  padding: 0.25rem 0.5rem;
  line-height: 1.1rem;
  color: #111;
  font-size: 0.9rem;
  position: relative;
  z-index: 2;
}
.masonry .grid-item p.autor, .masonry .grid-item p.copy {
  font-size: 1rem;
  font-family: "Lato", sans-serif;
  letter-spacing: 1px;
  padding: 0 0.5rem;
}
.masonry .grid-item .nombre-imagen {
  font-size: 1.5rem;
  font-family: "Times new roman";
  font-weight: normal;
  line-height: normal;
}
.masonry .grid-item .link .capa-over-descargar {
  opacity: 0;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  transition: opacity 0.3s;
}
.masonry .grid-item .link .capa-over-descargar .infodescargar {
  margin-bottom: 50px;
}
.masonry .grid-item .link .capa-over-descargar .lnr-cloud-download {
  font-size: clamp(1.3rem, 2vw, 2.5rem);
  display: block;
}
.masonry .grid-item .link:hover .capa-over-descargar,
.masonry .grid-item .link:focus .capa-over-descargar {
  opacity: 1;
}

.texto-home {
  background-color: #fff;
  z-index: 11;
  position: relative;
}
@media (min-width: 568px) {
  .texto-home {
    border-radius: 20px;
  }
}

@media (max-width: 567px) {
  .contenedor.carta-home {
    padding-left: 0;
    padding-right: 0;
  }
}

.bloque-destacados {
  position: relative;
  z-index: 1;
}
@media (max-width: 991px) {
  .bloque-destacados {
    margin-top: -1px;
  }
}
.bloque-destacados h2 {
  font-family: "Times New Roman", serif;
  font-size: clamp(2rem, 5vw, 3.5rem);
  color: #fff;
}

.destacados-home .ratio {
  background-color: rgb(164, 106, 32);
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  position: relative;
  overflow: hidden;
}
.destacados-home a.show {
  background-color: rgb(164, 106, 32);
  min-height: 50px;
  border-radius: 20px;
  padding: 0;
  display: flex;
  align-items: center;
  overflow: hidden;
  position: relative;
  opacity: 0;
  bottom: -40px;
  transition: all 0.6s;
}
.destacados-home a.show .title {
  position: absolute;
  bottom: 30px;
  z-index: 1;
  width: 100%;
  opacity: 0;
  animation: mymove2 1s forwards;
}
.destacados-home a.show .title h3 {
  color: #fff;
  font-family: "Times New Roman", serif;
  font-size: 1.5rem;
  font-size: clamp(1.1rem, 3vw, 2rem);
  margin: 0;
  text-shadow: 0px 0px 1px rgb(0, 0, 0);
  position: absolute;
  bottom: 10%;
  max-width: 90%;
}
@media (max-width: 520px) {
  .destacados-home a.show .title h3 {
    line-height: 1.1rem;
  }
}
.destacados-home a.show .title p.subtitulo {
  display: none;
  font-size: clamp(0.8rem, 3vw, 1.3rem);
  text-transform: uppercase;
  font-family: "Roboto", sans-serif;
  line-height: normal;
}
.destacados-home a.show .title .date {
  display: none;
  align-items: center;
  padding-top: 5px;
}
.destacados-home a.show .title .date p {
  font-family: "Roboto", sans-serif;
  font-size: 1rem;
}
@media (max-width: 520px) {
  .destacados-home a.show .title .date p {
    font-size: 0.8rem;
    line-height: normal;
  }
  .destacados-home a.show .title .date p br {
    content: "";
    display: block;
    font-size: 100%;
    height: 1px;
    display: block;
  }
}
.destacados-home a.show .title .date span {
  line-height: 1.5rem;
  font-family: "Teko", sans-serif;
  font-weight: 500;
  color: #fff;
  font-size: 1.8rem;
  text-align: center;
}
.destacados-home a.show .title .date span + span:before {
  content: "→";
  color: #fff;
  margin: 0 10px;
}
.destacados-home a.show .title .info {
  display: none;
}
.destacados-home a.show .title .info p {
  font-size: 1em;
  font-family: "Roboto", sans-serif;
  line-height: 1.1em;
  color: #fff;
}
.destacados-home a.show.visible {
  opacity: 1;
  bottom: 0;
  transition: all 0.25s;
}
.destacados-home a.show.visible:hover .title h3, .destacados-home a.show.visible:focus .title h3 {
  color: #ebae36;
}
@media (min-width: 768px) {
  .destacados-home a.show.visible:hover, .destacados-home a.show.visible:focus {
    opacity: 1;
  }
  .destacados-home a.show.visible:hover:after, .destacados-home a.show.visible:focus:after {
    background: linear-gradient(to bottom, rgb(164, 106, 32) 0%, rgb(164, 106, 32) 100%);
    height: 100%;
  }
  .destacados-home a.show.visible:hover .title, .destacados-home a.show.visible:focus .title {
    opacity: 1;
    animation: mymove 1s forwards;
  }
  .destacados-home a.show.visible:hover .title h3, .destacados-home a.show.visible:focus .title h3 {
    color: #ffffff;
    position: initial;
    bottom: initial;
  }
  .destacados-home a.show.visible:hover .title .fin,
  .destacados-home a.show.visible:hover .title p.subtitulo,
  .destacados-home a.show.visible:hover .title .date,
  .destacados-home a.show.visible:hover .title .icons, .destacados-home a.show.visible:focus .title .fin,
  .destacados-home a.show.visible:focus .title p.subtitulo,
  .destacados-home a.show.visible:focus .title .date,
  .destacados-home a.show.visible:focus .title .icons {
    display: flex;
  }
  .destacados-home a.show.visible:hover .title .info, .destacados-home a.show.visible:focus .title .info {
    display: block;
  }
}
@media (min-width: 768px) and (min-width: 454px) {
  .destacados-home a.show.visible:hover .icons, .destacados-home a.show.visible:focus .icons {
    display: block;
  }
}
.destacados-home a.show.visible:after {
  content: "";
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.7) 55%, rgb(0, 0, 0) 100%);
  transition: all 0.35s;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 50%;
}
@media (max-width: 769px) {
  .destacados-home a.show.visible:after {
    height: 75%;
  }
}

.item,
.item-grande {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  background-color: #333;
  /* Fondo de ejemplo, se reemplaza por la imagen de fondo */
}

.overlay-content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 10px;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));
  color: #fff;
}

h2 {
  font-size: 1.25rem;
  font-family: "Roboto", sans-serif;
  margin: 0;
}

/* Estilo para el primer elemento grande */
.item-grande {
  height: 100%;
}

.item-grande h2 {
  font-size: 1.5rem;
}

/* Margen entre los elementos */
.g-3 > .col {
  margin: 0;
  padding: 0;
}

/* Keyframes */
@keyframes mymove {
  from {
    top: 40px;
    opacity: 0;
  }
  to {
    top: 20px;
    opacity: 1;
  }
}
@keyframes mymove2 {
  from {
    bottom: 40px;
    opacity: 0;
  }
  to {
    bottom: 20px;
    opacity: 1;
  }
}
@keyframes mymove_responsive {
  from {
    bottom: 40px;
    opacity: 0;
  }
  to {
    bottom: 10px;
    opacity: 1;
  }
}
.banner.contenedor {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 15px;
  padding-right: 15px;
}

@media (max-width: 991px) {
  .banner_home {
    width: calc(100% + 40px);
    margin-left: -20px;
  }
}
.banner_home.mt-3 {
  margin-top: 0 !important;
}
.banner_home.mt-3 .contenedor {
  padding: 0;
}

@media (max-width: 991px) {
  .banner h1 {
    display: none;
  }
}
.banner a img {
  transition: all 0.3s;
}
.banner a:hover img, .banner a:focus img {
  filter: drop-shadow(0px 0px 5px #f7d470) contrast(1.1);
}

@media (max-width: 991px) {
  .flex-fill.w-100.mt-3 {
    margin-top: 0 !important;
  }
}
.banner_navidad {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("/images/banner/cartelnavidad25.webp") no-repeat;
  background-size: cover;
  background-position: bottom center;
  overflow: hidden;
  will-change: transform;
}
@media (max-width: 650px) {
  .banner_navidad {
    background: url("/images/banner/responsive-banner.jpg") no-repeat;
    background-size: cover !important;
  }
}

.magnify {
  overflow: hidden;
}

.banner_puntos {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("/images/banner/puntos_puntos.png") no-repeat;
  background-size: cover;
  background-position: bottom center;
  overflow: hidden;
  animation: vibracion 4s ease-in-out infinite, cambioOpacidad3 4s ease-in-out infinite;
}
.banner_puntos:after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  width: 100%;
  padding-bottom: 56.25%;
  background-image: url("/images/banner/puntos_halos.png");
  background-size: cover;
  background-position: bottom center;
  mix-blend-mode: luminosity;
  animation: vibracion 4s ease-in-out infinite, cambioOpacidad3 4s ease-in-out infinite;
}

.banner_puntos_a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("/images/banner/puntos_puntos_a.png") no-repeat;
  background-size: cover;
  background-position: bottom center;
  overflow: hidden;
  animation: vibracion_a 4s ease-in-out infinite 0.25s forwards, cambioOpacidad3 4s ease-in-out infinite;
}

.banner_puntos_b {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("/images/banner/puntos_puntos_b.png") no-repeat;
  background-size: cover;
  background-position: bottom center;
  overflow: hidden;
  animation: vibracion_b 6s ease-in-out infinite, cambioOpacidad3 4s ease-in-out infinite;
}

@keyframes vibracion {
  0% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(1px, -1px);
  }
  50% {
    transform: translate(-1px, 1px);
  }
  75% {
    transform: translate(1px, 1px);
  }
  100% {
    transform: translate(0, 0);
  }
}
@keyframes vibracion_a {
  0% {
    transform: translate(-1px, 1px);
  }
  25% {
    transform: translate(1px, 1px);
  }
  50% {
    transform: translate(0, 0);
  }
  75% {
    transform: translate(1px, 1px);
  }
  100% {
    transform: translate(-1px, 1px);
  }
}
@keyframes vibracion_b {
  0% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(1px, -1px);
  }
  50% {
    transform: translate(-1px, 1px);
  }
  75% {
    transform: translate(1px, 1px);
  }
  100% {
    transform: translate(0, 0);
  }
}
@keyframes flotar {
  0% {
    transform: translate(-50%, 0) scale(1);
  }
  50% {
    transform: translate(-50%, -1px) scale(0.9);
  }
  100% {
    transform: translate(-50%, 0) scale(1);
  }
}
@keyframes cambioEscala {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes cambioOpacidad {
  0%, 100% {
    opacity: 0.9;
  }
  50% {
    opacity: 1;
  }
}
@keyframes cambioOpacidad2 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.3;
  }
}
@keyframes cambioOpacidad3 {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
}
#bannervideo {
  position: relative;
  z-index: 33;
}
#bannervideo .bannervideo {
  position: relative;
  width: 100%;
  height: 55vw;
  overflow: hidden;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-color: #e2e2e2;
  background-clip: border-box;
  border-bottom: 1px solid #eee;
}
#bannervideo .bannervideo:after {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  transform: translateX(-100%);
  background: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(rgba(17, 38, 79, 0.2)), to(transparent));
  background: linear-gradient(90deg, transparent, rgba(17, 38, 79, 0.2), transparent);
  animation: loading 1.3s infinite;
}
#bannervideo .bannervideo iframe {
  z-index: 1;
  box-sizing: border-box;
  height: 56.25vw;
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  width: 177.77777778vh;
}
#bannervideo #playerbanner {
  position: absolute;
  top: 40%;
  left: 0;
  right: 0;
  text-align: center;
}
#bannervideo #playerbanner a.enlace-elemento {
  position: absolute;
  top: 43%;
  left: 0;
  right: 0;
  color: rgba(255, 255, 255, 0.8);
  border-radius: 0;
}
#bannervideo #playerbanner a.enlace-elemento span {
  font-size: clamp(2rem, 10vw, 4.4rem);
}
#bannervideo #playerbanner a.enlace-elemento:hover, #bannervideo #playerbanner a.enlace-elemento:focus {
  color: rgb(255, 255, 255);
  filter: drop-shadow(0px 0px 5px rgba(1, 1, 1, 0.2));
}
#bannervideo #playerbanner .ytImgThumbBox img {
  max-width: 100%;
}
#bannervideo .video-controles {
  z-index: 9;
  position: absolute;
  bottom: 1rem;
  left: 1rem;
}
#bannervideo .video-controles img {
  max-width: 300px;
  opacity: 0.8;
}
#bannervideo .video-controles .message {
  display: none;
}
#bannervideo .video-controles .message.active {
  display: block;
}
#bannervideo .video-controles button {
  background-repeat: no-repeat;
  vertical-align: top;
  cursor: pointer;
  background-color: #39487d;
  border-radius: 0;
  border: 0;
  color: #fff;
  padding: 0.5rem 0.6rem;
  transition: background-color 100ms linear;
  font-size: 1rem;
}
@media (max-width: 767px) {
  #bannervideo .video-controles button {
    border-radius: 50%;
    height: 40px;
    width: 40px;
    padding: initial;
    font-size: 1.3rem;
  }
}
#bannervideo .video-controles button:hover, #bannervideo .video-controles button:focus {
  background-color: #111;
}
@media (min-width: 768px) {
  #bannervideo button.video-mute-button {
    width: 135px;
  }
}

.banner.home {
  position: relative;
  height: 29vw;
  width: 100%;
  z-index: 0;
}
.banner.home .imagenlogo-sin-video {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 29vw;
}
.banner.home .imagenlogo-sin-video img {
  width: 350px;
  max-width: 90%;
}

.modal .modal-content {
  border-color: #39487d;
}

.controles {
  background-color: #0C0C0D;
  padding: 20px;
  color: #fff;
}
.controles .fecha-gal p {
  color: #d62b2b;
  font-family: "Teko", sans-serif;
  font-size: 3rem;
  font-size: clamp(1.5rem, 3vw, 3rem);
  line-height: 80%;
  margin: 0;
}
.controles .textos-gal p {
  margin: 0;
  padding: 0;
  font-size: 5rem;
  font-size: clamp(1.5rem, 3vw, 5rem);
  text-transform: uppercase;
  line-height: 80%;
  font-family: "Teko", sans-serif;
}
.controles .textos-gal p.gal_nomb {
  font-size: 6rem;
  font-size: clamp(2rem, 5vw, 6rem);
  text-transform: uppercase;
}
.controles .textos-gal p.gal_nomb a {
  color: #fff;
  text-decoration: none;
}
.controles .textos-gal p.gal_nomb a:hover, .controles .textos-gal p.gal_nomb a:focus {
  color: #d62b2b;
}
.controles .textos-gal p.gal_sub {
  font-size: 2.8rem;
  font-size: clamp(1.5rem, 3vw, 2.8rem);
  color: #d62b2b;
  text-transform: uppercase;
}
.controles .controles-gal button {
  color: #fff;
  background-color: #0C0C0D;
  border: 0;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  border-radius: 0;
  padding-top: 0;
  padding-bottom: 0;
  margin-top: -5px;
}
.controles .controles-gal button:hover, .controles .controles-gal button:focus {
  color: #d62b2b;
}

.no-filter {
  filter: none !important; /* Quita el filtro */
}

.galeria_home {
  display: flex;
  flex-direction: column;
  height: 100%;
}
@media (max-width: 991px) {
  .galeria_home {
    margin-left: -20px;
    width: calc(100% + 40px);
  }
}
.galeria_home .carousel-item img {
  filter: grayscale(100%) hue-rotate(0deg) invert(0%) opacity(100%) saturate(100%) sepia(0%);
  transition: filter 0.5s ease; /* Control de la transición */
  mix-blend-mode: none;
  z-index: 1;
}
.galeria_home .carousel-item iframe {
  z-index: 1;
}
.galeria_home .carousel-item:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  mix-blend-mode: color;
  background: #0C0C0D;
  opacity: 1;
}
.galeria_home .controles {
  height: 100%;
  flex: 1 1 auto;
}

.evento {
  position: relative;
  z-index: 1;
  background-color: #fff;
}
.evento a {
  color: #A26839;
}
.evento a:hover, .evento a:focus {
  color: #0C0C0D;
}
.evento p.antetitulo a {
  text-decoration: none;
  font-family: "Roboto", sans-serig;
  font-weight: bold;
  text-shadow: 0 -1px #fff, 1px 0 #fff, 0 1px #fff, -1px 0 #fff;
  font-size: clamp(1rem, 2vw, 1.1rem);
}
.evento #grid a {
  color: #fff;
}
.evento .descripcion {
  hyphens: auto;
}
@media (min-width: 992px) {
  .evento .descripcion {
    text-align: justify;
  }
}
.evento .descripcion img {
  max-width: 100%;
  height: auto !important;
}
@media (min-width: 992px) {
  .evento {
    margin-top: 2rem;
    padding-top: 2rem;
  }
}
.evento h1 {
  color: #39487d;
  font-size: clamp(1.8rem, 5vw, 4.5rem);
  position: relative;
  font-family: "Times new roman", serif;
  padding-bottom: 5px;
  line-height: normal;
}
@media (max-width: 991px) {
  .evento h1 {
    padding: 1.2rem 0 0 0;
    text-align: center;
  }
}
.evento h1.antet {
  padding: 0;
}
.evento h1.sub {
  margin: 0;
}
@media (max-width: 991px) {
  .evento .subtitulo {
    text-align: center;
    margin-top: 0.25rem;
  }
  .evento .antetitulo {
    margin-top: 0.25rem;
    text-align: center;
  }
}
.evento .descripcion > div:not([data-oembed-url]) {
  margin-top: 10px;
  display: inline-flex;
  width: 100%;
}
.evento .descripcion p.modoh1 {
  font-size: 2rem;
  font-size: clamp(1.8rem, 5vw, 4.5rem);
  font-family: "Times New Roman";
  color: #39487d;
}
.evento .descripcion p.modoh2 {
  font-size: 1.8rem;
  font-size: clamp(1.5rem, 5vw, 2.1rem);
  color: #39487d;
  font-family: "Times New Roman";
}
.evento .descripcion p.modoh3 {
  font-size: 1.6rem;
  font-weight: bold;
}
.evento .descripcion p.modoh4 {
  font-size: 1.4rem;
  font-weight: bold;
}
.evento .descripcion p.normal {
  font-size: 1.1rem;
  font-weight: normal;
  text-align: justify;
}
.evento .descripcion p.junto {
  font-size: 1.1rem;
  font-weight: normal;
  margin: 0 !important;
}
.evento .descripcion p span {
  color: #073186 !important;
  font-family: "Roboto", sans-serif;
  font-size: 1.1rem;
}
.evento .descripcion p:first-of-type span u {
  border-top: none;
}
.evento .descripcion a {
  display: inline-flex;
  flex-direction: column;
  transition: none;
  text-decoration: none;
}
.evento .descripcion a span {
  background-color: #A26839;
  background-image: none;
  background-size: initial;
  border-radius: 10px;
  color: #fff !important;
  display: block;
  font-family: "Lato", sans-serif;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: normal;
  padding: 3px 8px;
  text-align: justify;
  text-transform: uppercase;
  transition: none;
}
.evento .descripcion a span strong {
  font-weight: 400;
}
.evento .descripcion a span:hover, .evento .descripcion a span:focus {
  color: #000 !important;
  background: #ddd;
}
.evento .descripcion a span u {
  display: initial;
  border: none;
  text-decoration: none;
  padding: 0;
}
.evento p.subtitulo {
  font-weight: bold;
  font-family: "Lato", sans-serif;
  font-size: clamp(1.1rem, 2vw, 1.5rem);
}
.evento p.actualizado {
  text-align: right;
  color: #A26839;
  font-size: 1rem;
}
.evento h2 {
  position: relative;
  padding: 1rem 0;
}
.evento h2:before {
  left: 0;
  background: #A26839;
  content: "";
  height: 2px;
  position: absolute;
  top: 0;
  width: 100%;
}
.evento .accesibilidad h2:before {
  left: 0;
  content: "";
  height: 0;
  position: relative;
}
.evento .accesibilidad p:last-of-type {
  margin-bottom: 0;
}
.evento h2.sr-only {
  position: absolute;
  padding: initial;
}
.evento .estados-evento ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  margin-bottom: 1rem;
}
.evento .estados-evento ul li {
  display: flex;
}
.evento .estados-evento ul li span {
  border-radius: 10px;
  color: #fff;
  padding: 0.5rem 0.75rem;
  text-transform: uppercase;
}
.evento .estados-evento ul li.agotadas span {
  background-color: #0a6da7;
}
.evento .estados-evento ul li.cancelado span {
  background-color: #a7660a;
}
.evento .estados-evento ul li.finalizado span {
  background-color: #a70a3e;
}
.evento .detalles-evento {
  padding: 2rem;
  border: 2px solid #0C0C0D;
  border-radius: 20px;
  margin-bottom: 1rem;
}
.evento .detalles-evento ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.evento .detalles-evento ul li {
  margin-bottom: 1rem;
}
.evento .detalles-evento ul li ul li:last-child {
  margin-bottom: 0;
}
.evento .detalles-evento ul li.fecha {
  font-family: "Roboto", sans-serif;
}
.evento .detalles-evento ul li.duracion p {
  margin: 0;
}
.evento .detalles-evento ul li.mas_info {
  padding: 1rem;
  background-color: rgba(196, 245, 107, 0.25);
  border-radius: 20px;
  display: inline-block;
  margin-bottom: 10px;
  border: 1px solid rgba(171, 221, 248, 0.25);
}
.evento .detalles-evento ul li:last-child {
  margin: 0;
}
.evento .accesibilidad h2 {
  font-size: clamp(1.5rem, 2vw, 2rem);
  color: #0C0C0D;
}
@media (max-width: 991px) {
  .evento .accesibilidad h2 {
    font-size: 1.4rem;
    padding: 2px 30px;
    margin-bottom: 1rem;
    margin-top: -15px;
    width: calc(100% + 60px);
    margin-left: -30px;
    border-bottom: 1px solid #A26839;
    border-top: 1px solid #A26839;
    font-family: "Times New Roman", sans-serif;
    color: #0C0C0D;
  }
}
@media (min-width: 991px) {
  .evento .accesibilidad .descripcion {
    padding: 1rem;
    box-shadow: 0 0 0 1px rgb(226, 226, 200);
    background-color: rgba(253, 252, 223, 0.2);
    border-radius: 20px;
    margin-bottom: 1rem;
  }
}
.evento .accesibilidad ul {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
  margin-bottom: 0.5rem;
  margin: 0 0 1rem 0;
  padding: 0;
}
@media (max-width: 530px) {
  .evento .accesibilidad ul {
    flex-direction: column;
    align-items: flex-start;
  }
}
.evento .accesibilidad ul li {
  margin: 0.5rem 0;
  min-width: 50%;
}
.evento .accesibilidad ul li .ico-accesible {
  font-size: 2rem;
}
.evento .accesibilidad ul li a {
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.evento .txt-entradas {
  background-color: rgba(171, 221, 248, 0.25);
  border-radius: 20px;
  display: inline-block;
  margin-bottom: 10px;
  padding: 1rem;
  border: 1px solid rgba(196, 245, 107, 0.25);
  margin-top: 0.5rem;
  width: 100%;
}
.evento .txt-entradas p:last-of-type {
  margin-bottom: 0;
}

h2.sugeridos {
  text-align: left;
  color: #111;
}
@media (max-width: 767px) {
  h2.sugeridos {
    text-align: center;
  }
}
h2.sugeridos::before {
  position: relative;
  border: initial;
  background: none;
  margin: initial;
}

ul.sugeridos {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 1200px) {
  ul.sugeridos {
    flex-direction: column;
  }
}
ul.sugeridos li {
  list-style: none;
}
ul.sugeridos li.intervalo_fechas {
  display: block;
}
@media (min-width: 1200px) {
  ul.sugeridos li.intervalo_fechas {
    width: 50%;
  }
}
ul.sugeridos > li {
  list-style: none;
  margin-bottom: 10px;
  padding-bottom: 10px;
  display: block;
}
ul.sugeridos > li:last-child {
  border-bottom: none;
}

.lugar ul li {
  font-size: 1rem;
  font-weight: bold;
  color: #0C0C0D;
}

ul.sugeridos li a {
  outline-offset: 1px;
  outline-style: inherit;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}
ul.sugeridos li a .fecha-hora p {
  font-size: 0.9rem;
}
ul.sugeridos li a:hover, ul.sugeridos li a:focus {
  opacity: 1;
  text-decoration: none;
}
ul.sugeridos li a:hover h3, ul.sugeridos li a:focus h3 {
  color: #0C0C0D;
}
ul.sugeridos li a .imagen {
  max-width: 250px;
  margin-top: 0.5rem;
  object-fit: contain;
}
@media (max-width: 545px) {
  ul.sugeridos li a .imagen {
    max-width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
  }
  ul.sugeridos li a .imagen img {
    max-width: 100% !important;
  }
}
ul.sugeridos li a .imagen img {
  border-radius: 20px;
}
ul.sugeridos li a .info {
  padding: 25px;
  flex: 1;
}
@media (max-width: 567px) {
  ul.sugeridos li a .info {
    border-bottom: 1px solid rgba(0, 0, 0, 0.3);
  }
}
ul.sugeridos li a .info p {
  line-height: normal;
}
ul.sugeridos li a .info p.subtitulo {
  font-size: 0.9rem;
}
@media (max-width: 390px) {
  ul.sugeridos li a .info {
    padding: 15px;
  }
}
ul.sugeridos li a .info h3 {
  color: #111;
  font-family: "Times New Roman", serif;
}
ul.sugeridos li a .info p {
  text-align: left;
  margin-bottom: 0;
  font-family: "Lato", sans-serif;
  letter-spacing: 1px;
}
ul.sugeridos li a .info .lugar ul {
  margin: 0;
  padding: 0;
}

.evento .categ_list {
  min-height: 1rem;
  width: 100%;
}
.evento .categ_list ul {
  align-content: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  margin-bottom: 0;
  margin: 0.5rem 0;
  padding: 0;
  text-align: center;
}
.evento .categ_list ul li {
  line-height: normal;
  position: relative;
}
.evento .categ_list ul li a {
  background-color: #A26839;
  border-radius: 10px;
  color: #fff;
  display: block;
  font-family: "Lato", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  font-weight: bold;
  padding: 3px 8px;
  text-align: justify;
  text-transform: uppercase;
}
.evento .categ_list ul li a span {
  transition: none;
}
.evento .categ_list ul li a:hover, .evento .categ_list ul li a:focus {
  color: #0C0C0D;
  background: #ddd;
  text-transform: uppercase;
}
.evento .categ_list ul li a:hover span, .evento .categ_list ul li a:focus span {
  background-image: none;
}
.evento .categ_list ul li:last-child::after {
  position: relative;
  width: 0;
}

.evento .caja-foto {
  position: relative;
}
.evento .caja-foto::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: url("/images/noise_wiki.png");
  opacity: 0.04;
}
.evento #carouselEventos {
  border-radius: 20px;
  overflow: hidden;
}
.evento #carouselEventos ul li::marker {
  font-size: 0;
}
.evento .carousel .carousel-item {
  position: relative;
}
.evento .carousel .carousel-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  background: url("/images/noise_wiki.png");
  opacity: 0.04;
}
.evento .carousel .carousel-item.nograno::before {
  opacity: 0 !important;
}
.evento .carousel .control {
  border-radius: 50%;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.evento .carousel .control .carousel-control-next-icon {
  background-size: 13px;
  background-position: 4px center;
}
.evento .carousel .control .carousel-control-prev-icon {
  background-size: 13px;
  background-position: 3px center;
}
.evento .carousel .carousel-caption {
  bottom: 0;
  top: inherit;
  opacity: 1;
  padding-top: 0;
  padding-bottom: 0;
  left: 0;
  right: 0;
  text-align: right;
}
@media (max-width: 766px) {
  .evento .carousel .carousel-caption {
    position: absolute;
    height: inherit;
    background: transparent;
  }
}
.evento .carousel .carousel-caption p {
  border-top-left-radius: 20px;
  color: #fff;
  font-size: 0.9rem;
  margin: 0;
  padding: 0.25rem 1.3rem;
  background-color: rgba(0, 0, 0, 0.7);
  display: inline;
  backdrop-filter: blur(4px);
}

#rc-contenido a.carousel-control-prev span,
#rc-contenido a.carousel-control-next span {
  text-align: center;
  border-radius: 50%;
  overflow: hidden;
  padding: 0.5rem;
}
#rc-contenido a.carousel-control-prev:focus, #rc-contenido a.carousel-control-prev:hover,
#rc-contenido a.carousel-control-next:focus,
#rc-contenido a.carousel-control-next:hover {
  outline: 2px dashed rgba(174, 147, 85, 0);
}
#rc-contenido a.carousel-control-prev:focus .control, #rc-contenido a.carousel-control-prev:hover .control,
#rc-contenido a.carousel-control-next:focus .control,
#rc-contenido a.carousel-control-next:hover .control {
  background: #111;
  border: 1px solid rgba(0, 0, 0, 0.2);
}
#rc-contenido a.carousel-control-prev:focus span, #rc-contenido a.carousel-control-prev:hover span,
#rc-contenido a.carousel-control-next:focus span,
#rc-contenido a.carousel-control-next:hover span {
  filter: brightness(0) sepia() hue-rotate(-70deg) saturate(5);
}

@media (max-width: 760px) {
  .evento .descripcion {
    padding: 0;
    margin: 1rem auto;
  }
  .evento #carouselEventos, .evento .texto_piefoto {
    border: 0;
    border-radius: 0px;
    font-size: 0.75rem;
  }
  #carouselEventos {
    width: calc(100% + 40px);
    margin-left: -20px;
  }
  .caja-foto {
    font-size: 0.8rem;
  }
}
.mapas {
  background-color: #fff;
}
.mapas h1, .mapas h2, .mapas h3, .mapas h4 p, .mapas a, .mapas ul li {
  color: #111;
}
.mapas h2 {
  font-size: clamp(1.5rem, 2vw, 2rem);
  margin: 0;
  padding: 0;
  color: #39487d;
  font-family: "Times New Roman", serif;
}
.mapas h3 {
  font-family: "Roboto", sans-serif;
  font-size: clamp(1.1rem, 2vw, 1.1rem);
}
.mapas p, .mapas a, .mapas ul, .mapas ul li {
  font-size: 1rem;
}
.mapas a {
  text-decoration: none;
}
.mapas h3.nombrentidad {
  padding-top: 2rem;
  border-top: 2px solid #A26839;
}
.mapas ul {
  padding: 0 0 0 1rem;
}

.leaflet-control-attribution a {
  font-size: 0.8rem;
}

.leaflet-popup-content-wrapper {
  font-size: 1.1rem;
  text-align: center !important;
  font-family: "Roboto", sans-serif;
}

@media (min-width: 992px) {
  .info-entidad {
    border-top: 2px solid #0C0C0D;
    padding: 1rem;
  }
}

.evento-entidad {
  color: #111;
}
.evento-entidad h2:before {
  width: 0;
  height: 0;
  position: relative;
}
.evento-entidad .mapa {
  padding: 0;
}
.evento-entidad .mapa .mapid {
  background-color: #dbd;
  border: 1px solid #ddd;
  border-radius: 20px;
  height: 570px;
  width: 100%;
}
.evento-entidad .transporte p, .evento-entidad .eventomapa p {
  color: #111;
}
.evento-entidad .img-lugar {
  width: 100%;
}
.evento-entidad .info_lugar_responsive {
  font-size: 1.4rem;
  padding: 2px 30px;
  margin-bottom: 1rem;
  margin-top: -15px;
  width: calc(100% + 60px);
  margin-left: -30px;
  border-bottom: 1px solid #A26839;
  border-top: 1px solid #A26839;
  font-family: "Times New Roman", sans-serif;
  color: #0C0C0D;
}
.evento-entidad .abriren {
  background-image: linear-gradient(to right, #333 10%, rgba(255, 255, 255, 0) 0%);
  background-position: top;
  background-size: 10px 1px;
  background-repeat: repeat-x;
  margin-top: 1rem;
  padding-top: 1rem;
}
@media (max-width: 991px) {
  .evento-entidad .abriren p {
    margin-bottom: 0.25rem;
  }
}
.evento-entidad .transporte > ul {
  margin: 0;
  padding-left: 1rem;
}
.evento-entidad .accesos_maps_links {
  align-content: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 15px;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}
.evento-entidad .accesos_maps_links li {
  margin: 0;
}
.evento-entidad .accesos_maps_links li a {
  padding: 0;
  color: #A26839;
  text-decoration: none;
}
.evento-entidad .accesos_maps_links li a:hover, .evento-entidad .accesos_maps_links li a:focus {
  color: #111;
  text-shadow: 0 -1px #ffffff, 1px 0 #ffffff, 0 1px #ffffff, -1px 0 #ffffff;
}
.evento-entidad .accesos_maps_links li a:hover .fa-apple, .evento-entidad .accesos_maps_links li a:focus .fa-apple {
  background: none;
}
.evento-entidad .accesos_maps_links li a.btn {
  margin-bottom: 0.2rem;
  padding: 0.5rem 1rem;
  font-weight: normal;
  font-size: 0.8rem;
  border-color: RGB(70, 155, 117);
  color: #469b75;
}
.evento-entidad .accesos_maps_links li a.btn:hover, .evento-entidad .accesos_maps_links li a.btn:focus {
  color: rgba(3, 1, 115, 0.7);
  border-color: rgba(3, 1, 115, 0.3);
  background: linear-gradient(145deg, #ffffff, rgba(235, 239, 249, 0.6784313725));
  background: #ffffff;
}
.evento-entidad .img-lugar img {
  width: 330px;
  max-width: 100%;
  border-radius: 20px;
}

@media (max-width: 778px) {
  .evento-entidad h2 {
    border: none;
  }
  .evento-entidad .mapa {
    border: 1px solid transparent;
    padding: inherit;
  }
  .evento-entidad .mapa .mapid {
    width: calc(100% + 30px);
    margin-left: -15px;
    height: 300px;
  }
  .eventomapa {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .eventomapa svg {
    max-width: 180px;
  }
}
@media (max-width: 991px) {
  .sticky-top {
    position: relative !important;
  }
}
.zonas-distritos-imagen-lugar {
  position: relative;
  width: 100%;
}
.zonas-distritos-imagen-lugar .distritos-zonas.conimagen {
  position: absolute;
  z-index: 1;
  bottom: -30px;
  right: 5px;
}
.zonas-distritos-imagen-lugar .distritos-zonas.conimagen svg {
  opacity: 0.9;
}
.zonas-distritos-imagen-lugar .distritos-zonas.conimagen svg path {
  backdrop-filter: blur(4px);
}

#map {
  z-index: 1;
}
#map img {
  pointer-events: initial;
  -webkit-user-drag: initial;
  -khtml-user-drag: initial;
  -moz-user-drag: initial;
  -o-user-drag: initial;
  user-drag: initial;
}

.leyenda {
  list-style: none;
  padding: 0;
}
.leyenda img {
  width: 23px;
}

.leaflet-popup-content {
  text-align: left;
  font-size: 0.9rem !important;
}
.leaflet-popup-content p {
  font-size: 0.9rem !important;
}

.mapa {
  font-size: 0.9rem;
}
.mapa .mapa_descripcion {
  text-align: left;
}
.mapa .mapawidget {
  width: 100%;
  height: 620px;
  display: block;
}
.mapa div::first-letter {
  text-transform: capitalize;
}
.mapa .leaflet-container a {
  font-size: inherit;
}
.mapa .leaflet-popup-content-wrapper p {
  margin-top: 1rem;
}
.mapa .leaflet-popup-content a {
  font-family: "Times New Roman", serif;
  font-size: clamp(1.1rem, 3vw, 1.5rem);
  line-height: normal;
  font-weight: bold;
  color: #39487d;
}
.mapa .leaflet-popup-content a:hover, .mapa .leaflet-popup-content a:focus {
  color: #111;
  text-decoration: underline;
}
.mapa .leaflet-popup-content .fecha {
  font-family: "Lato", sans-serif;
  margin-top: 1rem;
}
.mapa .leaflet-popup-content .fecha strong::first-letter {
  text-transform: uppercase;
}
.mapa .actividad {
  display: none;
}
.mapa p {
  font-family: "Lato", sans-serif;
  margin: 5px 0 !important;
}
.mapa p.subtitulo {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: bold;
  font-family: "Lato", monospace;
}
.mapa p.subtitulo::first-letter {
  text-transform: capitalize;
}
.mapa img.mapa_imagen {
  margin: 0.4rem;
  padding: 0.4rem;
  width: auto;
  clear: both;
  display: block;
  margin: auto;
  max-width: 100% !important;
  max-height: 250px;
  border-radius: 20px;
}

.mapawidget {
  display: block;
}

.mapa_descripcion p {
  font-size: 0.9rem;
}
.mapa_descripcion ul.leyenda {
  list-style: none;
  display: inline;
  padding: 0.5rem;
  font-size: 0.9rem;
}
.mapa_descripcion ul.leyenda li img {
  vertical-align: middle;
  max-width: 25px;
}

#map {
  border: 1px solid #ddd;
  border-radius: 20px;
}

.leaflet-container .leaflet-control-attribution {
  display: inline-flex;
}

@media (min-height: 980px) {
  .mapa .mapawidget {
    height: 820px;
  }
}
#fichaprogamacion .info {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
#fichaprogamacion .info h2.subtitle {
  font-size: clamp(2.2rem, 4vw, 3rem);
  text-transform: uppercase;
  line-height: 80%;
  font-family: "Teko", sans-serif;
}
#fichaprogamacion .info .dwn {
  font-size: 1.125rem;
  display: block;
  text-decoration: underline;
  font-weight: 700;
}

.navigation--filter {
  left: -20px;
  position: relative;
  z-index: 2;
  max-width: 1000px;
  width: 40%;
}
.navigation--filter ul {
  display: flex;
  flex-direction: row;
  list-style: none;
  margin: 0;
  padding: 0;
}
.navigation--filter ul li {
  padding: 0;
  position: initial;
}
.navigation--filter ul li a.active {
  border: 3px solid black;
  border-bottom: 0;
  border-radius: 0;
  background-color: #fff;
  transition: all, 0s;
}
.navigation--filter ul li a {
  text-decoration: none;
  padding: 10px 35px 10px 20px;
  display: block;
  font-size: 1.125em;
  font-weight: bold;
  border-radius: 0;
  color: black;
  position: relative;
  background-color: #fff;
  transition: all, 0s;
  z-index: 111;
  opacity: 1;
}
.navigation--filter ul li a span {
  display: block;
}
.navigation--filter ul li a span:before {
  transform-origin: center;
  line-height: 0;
  margin-left: 5px;
  content: url("data:image/svg+xml,%3Csvg width='12px' height='7px' viewBox='0 0 12 7' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Pages' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round' stroke-linejoin='round'%3E%3Cg id='Men%C3%BA-desplegado-Informaci%C3%B3n-sobre-ficha-espect%C3%A1culo' transform='translate(-278, -97)' stroke='%23000000' stroke-width='2'%3E%3Cg id='Group-13' transform='translate(0, 64)'%3E%3Cg id='Group-29' transform='translate(158, 23)'%3E%3Cg id='Double-Arrow-right-Copy' transform='translate(121.95, 11.75)'%3E%3Cg id='Scroll-button-Copy-4' transform='translate(4.05, 2.025) rotate(-270) translate(-4.05, -2.025)translate(2.025, -2.025)'%3E%3Cpolyline id='Path-Copy' transform='translate(2.025, 4.05) rotate(-90) translate(-2.025, -4.05)' points='-2.025 2.025 2.025 6.075 6.075 2.025'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  display: block;
  top: 1px;
  position: absolute;
  right: 14px;
  top: 23px;
}
.navigation--filter ul li .content {
  background-color: white;
  visibility: 0;
  padding: 30px 30px 40px 20px;
  border: 3px solid black;
  min-width: 200px;
  position: absolute;
  border-radius: 0;
  z-index: 1;
  margin-top: -3px;
}
.navigation--filter ul li .content .field.field--search {
  margin-top: 40px;
}
.navigation--filter ul li .content .field.field--search .filter--search {
  padding: 0;
}
.navigation--filter ul li .content .field input[type=text] {
  appearance: none;
  border: 3px solid black;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  font-size: 1.125em;
  font-family: "roboto";
  font-weight: bold;
  height: 40px;
  padding: 10px;
  width: 100%;
}
.navigation--filter ul li .content .field input[type=text]:focus {
  outline: none;
}
.navigation--filter ul li .content .field input[type=checkbox] {
  display: none;
}
.navigation--filter ul li .content .field input[type=checkbox]:checked + label:after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background-color: black;
  background-clip: padding-box;
  position: absolute;
  left: 7px;
  top: 16px;
  transform: translateY(-50%);
}
.navigation--filter ul li .content .field + .field {
  margin-top: 20px;
}
.navigation--filter ul li .content .field label {
  position: relative;
  padding-left: 40px;
  font-size: 1.25em;
  font-family: "roboto";
  font-weight: normal;
}
.navigation--filter ul li .content .field label:before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  border: 3px solid black;
  background-clip: padding-box;
  position: absolute;
  left: 0;
  top: 0;
}
.navigation--filter ul li .content .field .filter--search {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
  line-height: 1em;
  color: black;
  text-transform: uppercase;
  font-size: 1.1em;
  font-family: "roboto";
  font-weight: bold;
}
.navigation--filter ul li .content .field .filter--search:after {
  content: url("data:image/svg+xml;charset=UTF-8,%3c?xml version='1.0' encoding='UTF-8'?%3e%3csvg id='Capa_1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 43 43'%3e%3cg id='Pages'%3e%3cg id='Programación---filtros-desplegable-1'%3e%3cg id='Group-4'%3e%3cg id='next-button-black'%3e%3crect id='Rectangle' x='1.5' y='1.5' width='40px' height='40px' fill='%23fff' stroke='%23000' stroke-width='3'/%3e%3cpolyline id='Path-Copy-2' points='17.39 29.77 26.44 21.86 17.39 13.94' fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='3'/%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e");
  display: block;
  line-height: 0;
  margin-left: 10px;
  width: 40px;
  height: 40px;
}
.navigation--filter ul li .content .field .filter--search:hover {
  text-decoration: underline;
  opacity: 1;
}
.navigation--filter ul li .content .field .filter--search:hover:after {
  filter: invert(1);
}

@media screen and (max-width: 970px) {
  .navigation--filter {
    left: 0;
  }
  .navigation--filter ul {
    display: flex;
  }
  .navigation--filter ul li a {
    font-size: 1em;
  }
  .navigation--filter ul li .content .field label {
    font-size: 1em;
  }
  .navigation--filter ul li .content .filter--search {
    font-size: 1em;
  }
}
@media screen and (max-width: 670px) {
  .navigation--filter {
    margin-top: 40px;
    width: 100%;
  }
  .navigation--filter ul {
    display: flex;
  }
  .navigation--filter ul li a {
    font-size: 0.85em;
    padding: 10px 30px 10px 10px;
  }
  .navigation--filter ul li .content {
    width: 100%;
    left: 0;
    border-top-right-radius: 0;
  }
  .navigation--filter ul li .content .field label {
    font-size: 1em;
    display: flex;
    align-items: center;
  }
  .navigation--filter ul li .content .field .filter--search {
    font-size: 1em;
  }
  .navigation--filter ul li .content .field input[type=checkbox]:checked + label:after {
    top: 50%;
  }
}
.pagina_basica {
  background: #fff;
  color: black;
}
.pagina_basica h1, .pagina_basica p, .pagina_basica a {
  color: #111;
}
.pagina_basica h1 {
  font-family: "Times New Roman";
  color: #39487d;
  font-size: clamp(2rem, 5vw, 3.5rem);
}
.pagina_basica .descripcion {
  text-align: justify;
  hyphens: auto;
}
.pagina_basica .descripcion p a {
  color: #A26839;
}
.pagina_basica .descripcion p a:hover, .pagina_basica .descripcion p a:focus {
  color: #111;
}
.pagina_basica .modoh1 a span {
  color: #A26839 !important;
}
.pagina_basica .modoh1 a:hover span, .pagina_basica .modoh1 a:focus span {
  color: #111 !important;
}

.info-accesibilidad-editorial {
  margin: 0;
  padding: 0;
  font-size: 0.9rem;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.info-accesibilidad-editorial li {
  font-family: "century-gothic", sans-serif;
  font-size: 15px;
  max-width: 300px;
  width: 300px;
  text-align: center;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.info-accesibilidad-editorial li a .iconografia.accesiblidad {
  align-items: center;
  border-radius: 50%;
  border: 3px solid #A26839;
  color: #A26839;
  display: flex;
  font-size: 2.8rem;
  height: 90px;
  justify-content: center;
  margin: auto;
  text-align: center;
  text-align: center;
  width: 90px;
}
.info-accesibilidad-editorial li a:hover, .info-accesibilidad-editorial li a:focus {
  text-decoration: none;
}
.info-accesibilidad-editorial li a:hover .txtaac, .info-accesibilidad-editorial li a:focus .txtaac {
  color: #111;
  text-shadow: 0 -1px #f9f9f9, 1px 0 #f9f9f9, 0 1px #f9f9f9, -1px 0 #f9f9f9;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 90%, #111 91%, #111 100%, rgba(0, 0, 0, 0) 101%);
}
.info-accesibilidad-editorial li a:hover .iconografia.accesiblidad, .info-accesibilidad-editorial li a:focus .iconografia.accesiblidad {
  color: #111;
  border: 3px solid #7aa239;
}

@media (max-width: 991px) {
  html, body {
    overflow-x: hidden;
    max-width: 100%;
    touch-action: pan-y; /* Restringe gestos táctiles al desplazamiento vertical */
  }
  * {
    box-sizing: border-box; /* Garantiza que los márgenes no provoquen desbordamientos */
  }
  body {
    overscroll-behavior-x: none;
  }
}
body {
  background: #3f3a57;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  background-repeat: no-repeat;
  border-radius: initial;
  scrollbar-width: none !important; /* Firefox */
  -ms-overflow-style: none !important; /* Edge */
}

body::--webkit-scrollbar {
  display: none !important;
}

p, ul li {
  font-family: "Roboto", sans-serif;
  font-size: 1.1rem;
  font-size: clamp(1.1rem, 2vw, 18px);
}

h2 {
  font-family: "Times New Roman", serif;
  font-size: clamp(2rem, 5vw, 3.5rem);
}

svg {
  max-width: 100%;
  height: auto;
}

@media (max-width: 768px) {
  .mt-sm-2 {
    margin-top: 1.1rem !important;
  }
}
.cd-top.show {
  visibility: visible;
}

.overlay-main {
  background: #3f3a57;
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  transition: top, 0.6s;
}
.overlay-main.hide {
  top: -100vh;
  transition: top, 0.6s;
}

blockquote {
  background: #f9f9f9;
  border-left: 10px solid #ccc;
  margin: 1.5em 10px;
  padding: 0.25rem 10px;
  quotes: "“" "”" "‘" "’";
}

/*INICIO Saltar al contenido principal*/
#skip-link {
  z-index: 99;
  position: relative;
}
#skip-link a {
  color: #fff;
}
#skip-link .element-invisible {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  height: 1px;
}
#skip-link .element-invisible.element-focusable:active,
#skip-link .element-invisible.element-focusable:focus {
  position: static !important;
  clip: auto;
  overflow: visible;
  height: auto;
  background-color: #111;
  padding: 0 1rem;
  font-size: 16px;
  display: block;
  text-align: center;
  color: #fff;
  text-decoration: underline;
}

body {
  min-height: 100vh;
  font-family: "Roboto", sans-serif;
  color: #0C0C0D;
}

a {
  text-decoration: none;
  position: relative;
  z-index: 1;
}
@media (min-width: 992px) {
  a span {
    background-image: linear-gradient(currentColor, currentColor);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: 0 2px;
    text-decoration: none;
    transition: background-size 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  }
  a:hover span, a:focus span {
    background-size: 100% 2px;
    transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  }
  a span.coma {
    background-image: initial;
  }
  a span.last-letter, a span.first-letter, a .ico-accesible {
    background-image: initial;
  }
}

.descripcion a {
  text-decoration: underline;
  transition: all 0.25s ease;
}

.contenedor_wrap {
  width: 100%;
  margin: auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100vh;
}

.contenedor {
  max-width: 1600px;
  padding: 5px 20px;
  margin: auto;
}
@media (min-width: 992px) {
  .contenedor {
    padding: 10px 20px;
  }
}

.aspect-ratio_147x116 {
  aspect-ratio: 147/116;
}

.bloque h2 {
  font-size: 1.8rem;
  font-family: "Roboto", sans-serif;
  width: 100%;
  border-bottom: 3px solid #0C0C0D;
  margin-bottom: 2rem;
  padding-bottom: 0.5rem;
}
.bloque h2.aling_dcha {
  text-align: right;
}

p a, h2 a {
  text-decoration: none;
  position: relative;
}
p a img.arrow, h2 a img.arrow {
  max-width: 20px;
  vertical-align: middle;
  margin-left: 0.25rem;
  transition: transform 0.3s ease;
}
p a:hover, p a:focus, h2 a:hover, h2 a:focus {
  text-decoration: underline;
}
p a:hover img, p a:focus img, h2 a:hover img, h2 a:focus img {
  transform: translateX(10px);
}

img.icon-decorativo {
  width: 20px;
}
img.icon-decorativo.w30 {
  width: 30px;
}
img.icon-decorativo.invert {
  filter: invert(1);
}

.card.info h2 {
  font-size: 1.5rem;
  font-family: "Roboto", sans-serif;
  width: 100%;
  border-bottom: 3px solid #fff;
  margin-top: 0rem;
  margin-bottom: 1.5rem;
  padding-bottom: 0.5rem;
  color: #fff;
}
.card.info h3 {
  color: #fff;
}
.card.info p {
  color: #fff;
}
.card.info p:last-child {
  margin-bottom: 2rem;
}

.card.info.positive {
  background-color: #fff;
}
.card.info.positive h2 {
  border-color: #0C0C0D;
  color: #0C0C0D;
}
.card.info.positive h3 {
  color: #0C0C0D;
}
.card.info.positive p {
  color: #0C0C0D;
}
.card.info.positive a {
  color: #0C0C0D;
}

.bloque-info-imagen .block--info {
  width: 100%;
  background-color: #d62b2b;
  color: #fff;
  border-radius: 0;
  background-clip: padding-box;
  padding: 0;
  display: flex;
  height: 450px;
  overflow: hidden;
  position: relative;
  text-decoration: none;
}
@media (max-width: 670px) {
  .bloque-info-imagen .block--info {
    height: auto;
    display: block;
  }
}
.bloque-info-imagen .block--info .content {
  width: 40%;
  padding: 40px;
  text-align: left;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 670px) {
  .bloque-info-imagen .block--info .content {
    width: 100%;
    padding: 40px 20px;
    display: block;
  }
}
.bloque-info-imagen .block--info .content .date {
  align-items: center;
  padding-top: 5px;
  display: flex;
  margin-bottom: 10px;
  font-size: 1.55rem;
  font-family: "Teko", sans-serif;
  font-weight: 500;
  color: #fff;
}
.bloque-info-imagen .block--info .content h2 {
  font-family: "teko";
  font-weight: bold;
  display: block;
  line-height: 1.1em;
  font-size: 3rem;
  text-decoration: none;
  color: #fff;
}
.bloque-info-imagen .block--info .content .info p {
  color: #fff;
}
.bloque-info-imagen .block--info .content .btn {
  text-align: left;
  padding: 0;
}
.bloque-info-imagen .block--info .content .btn span {
  display: inline-block;
  font-size: 1.125rem;
  color: #fff;
  font-weight: bold;
  border: 3px solid #fff;
  border-radius: 0;
  background-clip: padding-box;
  padding: 2px 15px;
  text-align: center;
  transition: all, 0.6s;
}
.bloque-info-imagen .block--info .image {
  height: 100%;
  width: 60%;
  overflow: hidden;
}
@media screen and (max-width: 670px) {
  .bloque-info-imagen .block--info .image {
    height: 250px;
    width: 100%;
  }
}
.bloque-info-imagen .block--info .image > img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  background-clip: padding-box;
  transform: scale(1);
  transition: all, 0.6s;
}
.bloque-info-imagen .block--info:hover, .bloque-info-imagen .block--info:focus {
  opacity: 1;
}
.bloque-info-imagen .block--info:hover h2, .bloque-info-imagen .block--info:focus h2 {
  text-decoration: underline;
  opacity: 0.95;
}
.bloque-info-imagen .block--info:hover .image > img, .bloque-info-imagen .block--info:focus .image > img {
  transform: scale(1.1);
}
.bloque-info-imagen .block--info:hover .btn span, .bloque-info-imagen .block--info:focus .btn span {
  background-color: #fff;
  color: #0C0C0D;
}

.bloque-info-imagen.prensa .block--info {
  height: 310px;
  border: 0;
}
.bloque-info-imagen.prensa .block--info .content {
  padding: 20px 30px;
  width: 100%;
}
.bloque-info-imagen.prensa .block--info .image {
  max-width: 442px;
  height: 310px;
  width: 48%;
  position: relative;
}
@media screen and (max-width: 970px) {
  .bloque-info-imagen.prensa .block--info .image {
    max-width: 100%;
    width: 100%;
  }
}

.bloque-info-imagen.blog .block--info {
  height: 310px;
  border: 0;
}
@media screen and (max-width: 970px) {
  .bloque-info-imagen.blog .block--info {
    display: block;
    height: auto;
  }
}
.bloque-info-imagen.blog .block--info .content {
  padding: 20px 30px;
  width: 100%;
}
.bloque-info-imagen.blog .block--info .image {
  max-width: 442px;
  height: 310px;
  width: 48%;
  position: relative;
}
@media screen and (max-width: 970px) {
  .bloque-info-imagen.blog .block--info .image {
    max-width: 100%;
    width: 100%;
  }
}
.bloque-info-imagen.blog .block--info:hover, .bloque-info-imagen.blog .block--info:focus {
  opacity: 1;
}
.bloque-info-imagen.blog .block--info:hover h2, .bloque-info-imagen.blog .block--info:focus h2 {
  text-decoration: underline;
  opacity: 0.9;
}

#error_page {
  background-color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
#error_page > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
#error_page p.errormss {
  font-size: 2rem;
  font-family: "Times New Roman", "serif";
}

a.nofound {
  color: #d62b2b;
}

a.downloadpdf {
  transition: all 0.3s ease;
  font-weight: 300;
  font-family: "Roboto", sans-serif !important;
  color: #fff;
  background: #39487d;
  text-decoration: none !important;
}
a.downloadpdf img {
  transition: all 0.3s ease;
  filter: brightness(0) saturate(100%) invert(100%) sepia(50%) saturate(2784%) hue-rotate(12deg) brightness(100%) contrast(88%);
}
a.downloadpdf span {
  transition: none;
  font-weight: 300;
  font-size: clamp(0.9rem, 2vw, 1rem);
}
a.downloadpdf img {
  transform: none !important;
  margin: 0 !important;
}
a.downloadpdf span.size {
  font-size: 0.85rem;
  opacity: 0.9;
}
a.downloadpdf:hover, a.downloadpdf:focus {
  transition: all 0.3s ease;
  background: #fafafa;
  color: #000 !important;
}
a.downloadpdf:hover img, a.downloadpdf:focus img {
  filter: none;
}
a.downloadpdf:hover span, a.downloadpdf:focus span {
  background: none;
  transition: none;
}
a.downloadpdf.invertido {
  filter: invert(1);
  background: #fff;
}
.size {
  font-size: 0.85rem;
  opacity: 0.9;
}

a.masinfo {
  background-color: #A26839;
  background-image: none;
  background-size: initial;
  border-radius: 10px;
  color: #fff !important;
  display: block;
  font-family: "Lato", sans-serif;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: normal;
  padding: 3px 8px;
  text-align: justify;
  text-transform: uppercase;
  transition: none;
}
a.masinfo strong {
  font-weight: normal;
}
a.masinfo:hover, a.masinfo:focus {
  background: #ddd;
  color: #000 !important;
}

/* Estilo básico para el botón */
.cd-top {
  position: fixed;
  bottom: 20px; /* Se coloca 20px por encima del borde inferior */
  right: 20px;
  display: none; /* Inicialmente oculto */
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 999;
}
@media (max-width: 991px) {
  .cd-top {
    right: 5px;
    bottom: 5px;
  }
}
.cd-top .contenido-back-top {
  background-color: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(2px);
  color: white;
  padding: 6px;
  border-radius: 8px;
  font-size: 16px;
  width: 35px;
  height: 35px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.28);
}
.cd-top:hover, .cd-top:focus {
  transition: opacity 0.3s ease;
}
.cd-top:hover .contenido-back-top, .cd-top:focus .contenido-back-top {
  background-color: #b30000;
}

/* Cuando el botón es visible */
.cd-top.show {
  display: block;
  opacity: 1; /* Se vuelve visible */
}

.prensa .video_embed, #pagina .video_embed {
  position: relative;
  width: 100%;
  /* 16:9 -> cambia el valor si quieres otra relación de aspecto */
  padding-top: 56.25%;
  overflow: hidden;
}
.prensa .video_embed iframe, #pagina .video_embed iframe {
  position: absolute;
  inset: 0; /* top:0; right:0; bottom:0; left:0; */
  width: 100%;
  height: 100%;
  border: 0;
}

.ui-widget-content a.ui-state-default:hover, .ui-widget-content a.ui-state-default:focus {
  background-color: #ee7ae1;
}/*# sourceMappingURL=navidadmadrid.css.map */