/*Importamos Fuentes, Mixins y Variables*/
@font-face { font-family: 'AncizarSans-LightItalic'; src: url("../fonts/Ancizar-Sans/AncizarSans-LightItalic.eot"); src: url("../fonts/Ancizar-Sans/AncizarSans-LightItalic.woff2") format("woff2"), url("../fonts/Ancizar-Sans/AncizarSans-LightItalic.woff") format("woff"), url("../fonts/Ancizar-Sans/AncizarSans-LightItalic.ttf") format("truetype"), url("../fonts/Ancizar-Sans/AncizarSans-LightItalic.svg#AncizarSans-LightItalic") format("svg"), url("../fonts/Ancizar-Sans/AncizarSans-LightItalic.eot?#iefix") format("embedded-opentype"); font-weight: normal; font-style: normal; }
@font-face { font-family: 'AncizarSans-Light'; src: url("../fonts/Ancizar-Sans/AncizarSans-Light.eot"); src: url("../fonts/Ancizar-Sans/AncizarSans-Light.woff2") format("woff2"), url("../fonts/Ancizar-Sans/AncizarSans-Light.woff") format("woff"), url("../fonts/Ancizar-Sans/AncizarSans-Light.ttf") format("truetype"), url("../fonts/Ancizar-Sans/AncizarSans-Light.svg#AncizarSans-Light") format("svg"), url("../fonts/Ancizar-Sans/AncizarSans-Light.eot?#iefix") format("embedded-opentype"); font-weight: normal; font-style: normal; }
@font-face { font-family: 'AncizarSans-Regular'; src: url("../fonts/Ancizar-Sans/AncizarSans-Regular.eot"); src: url("../fonts/Ancizar-Sans/AncizarSans-Regular.woff2") format("woff2"), url("../fonts/Ancizar-Sans/AncizarSans-Regular.woff") format("woff"), url("../fonts/Ancizar-Sans/AncizarSans-Regular.ttf") format("truetype"), url("../fonts/Ancizar-Sans/AncizarSans-Regular.svg#AncizarSans-Regular") format("svg"), url("../fonts/Ancizar-Sans/AncizarSans-Regular.eot?#iefix") format("embedded-opentype"); font-weight: normal; font-style: normal; }
@font-face { font-family: 'AncizarSans-Bold'; src: url("../fonts/Ancizar-Sans/AncizarSans-Bold.eot"); src: url("../fonts/Ancizar-Sans/AncizarSans-Bold.woff2") format("woff2"), url("../fonts/Ancizar-Sans/AncizarSans-Bold.woff") format("woff"), url("../fonts/Ancizar-Sans/AncizarSans-Bold.ttf") format("truetype"), url("../fonts/Ancizar-Sans/AncizarSans-Bold.svg#AncizarSans-Bold") format("svg"), url("../fonts/Ancizar-Sans/AncizarSans-Bold.eot?#iefix") format("embedded-opentype"); font-weight: normal; font-style: normal; }
@font-face { font-family: 'AncizarSans-BoldItalic'; src: url("../fonts/Ancizar-Sans/AncizarSans-BoldItalic.eot"); src: url("../fonts/Ancizar-Sans/AncizarSans-BoldItalic.woff2") format("woff2"), url("../fonts/Ancizar-Sans/AncizarSans-BoldItalic.woff") format("woff"), url("../fonts/Ancizar-Sans/AncizarSans-BoldItalic.ttf") format("truetype"), url("../fonts/Ancizar-Sans/AncizarSans-BoldItalic.svg#AncizarSans-BoldItalic") format("svg"), url("../fonts/Ancizar-Sans/AncizarSans-BoldItalic.eot?#iefix") format("embedded-opentype"); font-weight: normal; font-style: normal; }
/* Animations */
@-webkit-keyframes bounce { 0%, 20%, 50%, 80%, 100% { -webkit-transform: translateY(0); transform: translateY(0); }
  40% { -webkit-transform: translateY(-5px); transform: translateY(-5px); }
  60% { -webkit-transform: translateY(-5px); transform: translateY(-5px); } }
@keyframes bounce { 0%, 20%, 50%, 80%, 100% { -webkit-transform: translateY(0); transform: translateY(0); }
  40% { -webkit-transform: translateY(-5px); transform: translateY(-5px); }
  60% { -webkit-transform: translateY(-5px); transform: translateY(-5px); } }
/*Scale animation*/
@-webkit-keyframes scale { 25% { -webkit-transform: scale(0.95); transform: scale(0.95); }
  75% { -webkit-transform: scale(1.05); transform: scale(1.05); } }
@keyframes scale { 25% { -webkit-transform: scale(0.95); transform: scale(0.95); }
  75% { -webkit-transform: scale(1.05); transform: scale(1.05); } }
/* Fonts */
/* Fonts sizes */
body { background: transparent !important; overflow-x: hidden; }

.events_mosaic { padding: 60px 0; max-width: 900px; margin: 0 auto; }
.events_mosaic .title { color: #0a526a; font-family: "AncizarSans-BoldItalic", Tahoma, Geneva, sans-serif; font-size: 45px; line-height: 1; margin-bottom: 30px; margin-top: 10px; }
.events_mosaic .events_info { float: none; width: 100%; }
.events_mosaic .events_info .item { padding: 17px 24px; min-height: 170px; max-width: none; width: 100%; margin: 0 0 24px 0; box-shadow: 0 2px 8px rgba(0,0,0,0.06); border-radius: 12px; display: flex; align-items: center;}
.events_mosaic .events_info .item .content { position: relative; -webkit-transition: all 0.2s ease-in-out; transition: all 0.2s ease-in-out; }
.events_mosaic .events_info .item .content .content_item { display: block; position: relative; width: 100%; }
.events_mosaic .events_info .item .content .content_item:active, .events_mosaic .events_info .item .content .content_item:focus, .events_mosaic .events_info .item .content .content_item:hover { outline: none; text-decoration: none; }
.events_mosaic .events_info .item .content .detail_info { display: block; padding: 0; position: relative; padding-left: 0; }
.events_mosaic .events_info .item .content .detail_info .item_title { color: #0a526a; font-family: "AncizarSans-Bold", Tahoma, Geneva, sans-serif !important; font-size: 22px; line-height: 1.2; margin: 0; margin-bottom: 10px; text-transform: uppercase !important; }
.events_mosaic .events_info .item .content .detail_info .info { color: #58595b !important; font-family: "AncizarSans-Light", Tahoma, Geneva, sans-serif; font-size: 17px; line-height: 1.3; margin: 0 0 8px 0; padding-left: 0; text-align: left; }
.events_mosaic .events_info .item .content .detail_info .events_department { display: inline-block; margin-top: 14px; padding: 0; position: relative; }
.events_mosaic .events_info .item .content .detail_info .event_date { color: #43a77a; font-size: 17px; margin: 6px 0; }
.events_mosaic .events_info .item .content .detail_info .event_location { color: #6a6a6a; font-size: 17px; margin: 4px 0 10px 0; }
.events_mosaic .events_info .item .content .detail_info .events_department:active, .events_mosaic .events_info .item .content .detail_info .events_department:focus, .events_mosaic .events_info .item .content .detail_info .events_department:hover { outline: none; text-decoration: none; }
.events_mosaic .events_info .item .content .detail_info .events_department .name { background-color: #039b9a; color: #fff; display: inline-block; font-family: "AncizarSans-LightItalic", Tahoma, Geneva, sans-serif !important; font-size: 17px !important; line-height: 1; margin: 0; padding: 6px 13px; text-transform: inherit; }
/* .events_mosaic .events_info .item:active, .events_mosaic .events_info .item:hover, .events_mosaic .events_info .item:focus {  -webkit-box-shadow: 0px 0px 5px 0px rgba(51, 51, 51, 0.3);    box-shadow: 0px 0px 5px 0px rgba(51, 51, 51, 0.3); transition: box-shadow 0.2s ease-in-out;} */
.events_mosaic .events_info .item { transition: box-shadow 0.3s cubic-bezier(.25,.8,.25,1), transform 0.3s cubic-bezier(.25,.8,.25,1);}
.events_mosaic .events_info .item:hover, .events_mosaic .events_info .item:focus { box-shadow: 0 8px 32px rgba(51,51,51,0.18), 0 1.5px 6px rgba(51,51,51,0.12); transform: translateY(-4px) scale(1.02); z-index: 2;}
.events_mosaic .events_images { display: inline-block; float: right; margin-top: 30px; padding: 0; width: 32%; }
.events_mosaic .events_images .image { padding-bottom: 30px; }
.events_mosaic .item_image img { width: 170px; height: 170px; object-fit: cover; border-radius: 14px; display: block; }
.events_mosaic .item_image { margin-right: 24px; flex-shrink: 0; position: relative; overflow: hidden;}
.events_mosaic .item_image::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #671242; opacity: 0.8; mix-blend-mode: darken; transition: opacity 0.1s ease; z-index: 1; pointer-events: none; border-radius: 14px; }
.events_mosaic .events_info .item:hover .item_image::before { opacity: 0; }
.item_image { position: relative; }
.image_tag { position: absolute; top: 12px; left: 12px; background: #671242; color: #edbb2f; font-family: "AncizarSans-Bold", Tahoma, Geneva, sans-serif; font-size: 14px; padding: 4px 14px; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,0.10); z-index: 2; letter-spacing: 0.5px; text-transform: uppercase; pointer-events: none;}
.events_wrapper { display: flex; align-items: flex-start; gap: 0; width: 100%; box-sizing: border-box;}
.events_sidebar { width: 30%; min-width: 320px; flex-shrink: 0; background: #fff; padding: 50px 40px 24px 80px; border: none; }
.events_sidebar .title { color: #0a526a; font-family: "AncizarSans-BoldItalic", Tahoma, Geneva, sans-serif; font-size: 45px; line-height: 1; margin-bottom: 30px; margin-top: 10px; }
.events_mosaic { flex: 1; min-width: 0; margin-left: 56px; padding-left: 32px; }
.sidebar_title { font-size: 28px; color: #0a526a; font-family: "AncizarSans-BoldItalic", Tahoma, Geneva, sans-serif; margin-bottom: 28px; letter-spacing: 1px; padding-left: 8px;}
.sidebar_section { margin-bottom: 24px;}
.sidebar_label { font-size: 26px; color: #008786; font-family: "AncizarSans-Bold", Tahoma, Geneva, sans-serif; background: #fff; border: 2px solid #43a77a; border-radius: 2px; padding: 10px 17px; margin-bottom: 12px; letter-spacing: 0.5px; display: block;     text-transform: uppercase;}
.sidebar_list { list-style: none; padding: 0; margin: 0 0 10px 0; }
.sidebar_btn { background: none; border: none; color: #222; font-size: 21px; padding: 10px 7px; margin-bottom: 2px; width: 100%; text-align: left; cursor: pointer; border-radius: 0; transition: background 0.2s, color 0.2s; font-family: "AncizarSans-Regular", Tahoma, Geneva, sans-serif; border: none; display: block;}
.sidebar_btn.active,.sidebar_btn:focus,.sidebar_btn:hover { background: #43a77a; color: #fff; font-family: "AncizarSans-Bold", Tahoma, Geneva, sans-serif; outline: none;}

@media screen and (max-width: 1700em) { .events_mosaic .events_info .item .content_item .item_title { font-size: 21px; letter-spacing: 0.5px; } }
@media screen and (max-width: 40em) { .events_mosaic { padding: 25px 25px 40px; }
  .events_mosaic .title { font-size: 35px; margin-bottom: 10px; }
  .events_mosaic .events_info { width: 100%; }
  .events_mosaic .events_info .item { padding: 0; margin: 17px 0; -webkit-box-shadow: 0px 0px 17px -5px rgba(0, 0, 0, 0.4); box-shadow: 0px 0px 17px -5px rgba(0, 0, 0, 0.4); }
  .events_mosaic .events_info .item .content_item .item_title { padding: 0 0 5px; }
  .events_mosaic .events_images { display: none; } }
@media screen and (max-width: 40em) {
  .events_wrapper { flex-direction: column; }
  .events_sidebar { width: 100%; margin-bottom: 24px; padding-left: 0; }
  .events_mosaic { width: 100%; max-width: 100%; margin: 0; padding-left: 0; }
}

/* Animaciones para filtro */
.events_wrapper .sidebar_btn { position: relative; transition: background .22s ease, color .22s ease, transform .18s ease, padding-left .22s ease; padding-left: 32px; }
.events_wrapper .sidebar_btn::before { content: ''; position: absolute; left: 14px; top: 50%; transform: translateY(-50%) scaleY(0); width: 6px; height: 60%; background: #43a77a; border-radius: 4px; transition: transform .28s cubic-bezier(.2,.8,.2,1), opacity .28s; opacity: 0; }
.events_wrapper .sidebar_btn.active::before { transform: translateY(-50%) scaleY(1); opacity: 1; }
.events_wrapper .sidebar_btn.active { transform: translateX(4px); }

/* Animación de entrada/salida para las tarjetas */
.events_mosaic .events_info .item { transition: opacity .28s ease, transform .28s ease, max-height .28s ease, margin .28s ease, padding .28s ease; max-height: 1200px; overflow: hidden; }
.events_mosaic .events_info .item.hidden { opacity: 0; transform: translateY(-10px); max-height: 0; margin: 0; padding-top: 0; padding-bottom: 0; pointer-events: none; }
.events_mosaic .events_info .item.visible { opacity: 1; transform: translateY(0); max-height: 1200px; pointer-events: auto; }

/* Ajustes: espacio interno del sidebar y tipografía para que se vea más grande */
.events_sidebar { box-sizing: border-box; }
.events_sidebar .sidebar_label { font-size: 22px; }
.events_sidebar .sidebar_btn { font-size: 18px; }
/* Paginación */
.events_pagination { margin-top: 17px; text-align: center; font-size: 17px; }
.events_pagination .pagination_list { list-style: none; margin: 0; padding: 0; display: inline-flex; gap: 8px; align-items: center; }
.events_pagination .page_item { display: inline-block; padding: 8px 12px; border-radius: 6px; background: transparent; color: #0a526a; font-weight: 600; }
.events_pagination .page_item a { color: inherit; text-decoration: none; }
.events_pagination .page_item.current { background: #43a77a; color: #fff; }
.events_pagination .page_item.disabled { opacity: 0.4; pointer-events: none; }
.events_pagination .page_item.prev, .events_pagination .page_item.next { font-weight: 500; }
