/*
------------------------------------------------------------------
[Master style Stylesheet]
Project:Classico Night Club 1.0
-------------------------------------------------------------------
[Table of contents]
1. body css
2. common css
3. header css
4. navigation css
5. welcome section css
6. Home event css
7. Home gallery css
8. music track css
9. video css 
10.testimonial css 
11.Home Blog css 
12.subscribe css 
13.footer css 
14.footer bottom css	
15.about us page css
16.offer section css
17.club crousel css
18.blog page css
19.blog sidebar css
20.blog center css
21.blog full css
22.blog single css
23.event page css
24.contact page css
25.booking page css
26.gallery  css
27.video gallery page css
28.preloader css
29. triangle and button shape css  
------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------
 1. body start
----------------------------------------------------------------------------------*/
body {
    margin: 0;
    padding: 0;
    font-family: 'Ubuntu', sans-serif;
    background: url('../images/bg/pattern_bg.webp') no-repeat;
    background-size: cover;
    font-size: 15px;
    line-height: 1.42857143;
}
a:hover,
a:focus {}  

a:focus {
    outline: none;
}
button:focus {
    outline: none;
}
input:focus {
    outline: none;
}
.main_wrapper p {
    font-family: 'Ubuntu', sans-serif;
    line-height: 25px;
}
a {        
    text-decoration: none;
}
/*----------------------------------------------------------------------------------
 1. body end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
 2. common css start
----------------------------------------------------------------------------------*/

.pad_0 {
    padding: 0px !important;
}

.pad_t_55 {
    padding-top: 55px;
}

.pad_t_b_80 {
    padding-top: 80px;
    padding-bottom: 80px;
}

.pad_t_80 {
    padding-top: 80px;
}

.pad_b_80 {
    padding-bottom: 80px;
}

.center_align {
    text-align: center;
}

.full-width {
    float: left;
    width: 100%;
}


/* placeholder css start */


/* subscribe input placehold */

.subscribe_input input::-webkit-input-placeholder {
    color: #ffffff;
}

.subscribe_input input :-moz-placeholder {
    /* Firefox 18- */
    color: #ffffff;
}

.subscribe_input input ::-moz-placeholder {
    /* Firefox 19+ */
    color: #ffffff;
}

.subscribe_input input :-ms-input-placeholder {
    color: #ffffff;
}


/* subscribe input placehold */


/*   comment form placehold */

.px_form input::-webkit-input-placeholder {
    color: #b0b0b0;
}

.px_form input:-moz-placeholder {
    /* Firefox 18- */
    color: #b0b0b0;
}

.px_form input::-moz-placeholder {
    /* Firefox 19+ */
    color: #b0b0b0;
}

.px_form input:-ms-input-placeholder {
    color: #b0b0b0;
}

.px_form textarea::-webkit-input-placeholder {
    color: #b0b0b0;
}

.px_form textarea:-moz-placeholder {
    /* Firefox 18- */
    color: #b0b0b0;
}

.px_comment_form textarea::-moz-placeholder {
    /* Firefox 19+ */
    color: #b0b0b0;
}

.px_form textarea:-ms-input-placeholder {
    color: #b0b0b0;
}


/* comment form placehold */


/* placeholder css end */

.px_navigations ul li a,
.blog_desc a,
.px_navigations ul li a:after {
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
}

.right_details a {
    -webkit-transition: all 500ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -moz-transition: all 500ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -o-transition: all 500ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    transition: all 500ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    /* easeInOutQuad */
    -webkit-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -moz-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -o-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    /* easeInOutQuad */
}

.triangle_shape,
.triangle_btn:before,
.triangle_btn:after,
.triangle_shape:before,
.triangle_shape:after,
.triangle_box:before,
.triangle_box:after,
.tagcloud a:after,
.tagcloud a:before {
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
}

.px_sevice_overlay,
.border,
.px_form input,
.photo_gallery_popup img {
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
}

.gallery_overlay,
.item img,
.blog_thumb img,
.tparrows,
.tparrows:before,
.book_thumb .table_overlay {
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
}

.mfp-container button,
.mfp-container button:after,
.mfp-container button:before,
.triangle_btn:after,
.triangle_btn:before .table_overlay {
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
}

.overlay_inner h4,
.overlay_inner p {
    -webkit-transition: all 1000ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -moz-transition: all 1000ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -o-transition: all 1000ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    transition: all 1000ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    /* easeInOutQuad */
    -webkit-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -moz-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -o-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    /* easeInOutQuad */
}

.align_center {
    text-align: center;
}

.color_overlay {
    background-color: rgba(0, 0, 0, 0.88);
}


/*----------------------------------------------------------------------------------
 2. common css end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
 3. header css start
----------------------------------------------------------------------------------*/

.main_wrapper {
    float: left;
    width: 100%;
    backface-visibility: hidden;
    z-index: 999;
}

.px_header_main_home1 {
    position: relative;
}

.px_header_main {
    background: url('../images/maestra/LaFarandula_muralZapata.webp') no-repeat;
    background-size: cover;
    position: relative;
    margin-top: 99px;
}

.px_header_main:after {
    background-color: rgba(4, 4, 4, 0.85);
    content: "";
    position: absolute !important;
    width: 100%;
    height: 100%;
    display: block;
}

.px_header_main .overlay_color {
    position: relative;
    z-index: 99;
}

.wrapper_navigation.px_home_1 {
    background-color: rgba(0, 0, 0, 0.9) !important;
    position: absolute !important;
    bottom: 0;
    left: 0;
    width: 100%;
}

.px_slider_home .tparrows {
    display: none !important;
}


/*----------------------------------------------------------------------------------
 3. header css  end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
 4. navigation css start
----------------------------------------------------------------------------------*/

.wrapper_navigation {
    background-color: #030203;
    border-top: 1px solid #fd644f ;
    border-bottom: 1px solid #fd644f ;
    position: relative;
    padding: 27px 0;
}

.wrapper_navigation:before {
    content: "";
    position: absolute !important;
    width: 0;
    height: 0;
    left: 0;
    top: 0;
    border-top: 40px solid #fd644f ;
    border-right: 40px solid transparent;
}

.wrapper_navigation:after {
    content: "";
    position: absolute !important;
    width: 0;
    height: 0;
    right: 0;
    bottom: 0;
    border-bottom: 40px solid #fd644f ;
    border-left: 40px solid transparent;
}

.px_header_main .wrapper_navigation {
    position: fixed;
    top: 0;
}

/* Ajuste de la imagen del logo */
.px_logo img {
    /* La altura depende de qué tan grandes sean tus letras. 
       Prueba entre 30px y 50px */
    height: 50px; 
    width: auto; /* Mantiene la proporción original */
    display: block;
    transition: all 0.3s ease; /* Para que se vea fluido si cambias el tamaño */
}

/* Alineación del contenedor del logo */
.px_logo {
    display: flex;
    align-items: center;
    height: 100%; /* Ocupa el alto disponible para centrar */
}

.navigation_main {
    float: left;
    width: 100%;
}

.px_navigations {
    float: left;
    width: 100%;
    margin-top: 10px;
    -webkit-transition: all 500ms cubic-bezier(0.840, 0.045, 0.310, 1);
    /* older webkit */
    -webkit-transition: all 500ms cubic-bezier(0.840, 0.045, 0.310, 1.295);
    -moz-transition: all 500ms cubic-bezier(0.840, 0.045, 0.310, 1.295);
    -o-transition: all 500ms cubic-bezier(0.840, 0.045, 0.310, 1.295);
    transition: all 500ms cubic-bezier(0.840, 0.045, 0.310, 1.295);
    /* custom */
    -webkit-transition-timing-function: cubic-bezier(0.840, 0.045, 0.310, 1);
    /* older webkit */
    -webkit-transition-timing-function: cubic-bezier(0.840, 0.045, 0.310, 1.295);
    -moz-transition-timing-function: cubic-bezier(0.840, 0.045, 0.310, 1.295);
    -o-transition-timing-function: cubic-bezier(0.840, 0.045, 0.310, 1.295);
    transition-timing-function: cubic-bezier(0.840, 0.045, 0.310, 1.295);
    /* custom */
}

.px_navigations ul {
    margin: 0;
    padding: 0;
    float: right;
}

.px_navigations ul>li {
    list-style: none;
    float: left;
    margin-left: 40px;
    position: relative;
}

.px_navigations ul>li:first-child {
    margin-left: 0px;
}

.px_navigations ul>li>a {
    position: relative;
    text-transform: uppercase;
    font-size: 18px;
    color: #fff;
    text-decoration: none;
    padding: 39px 0px;
}

.px_navigations ul li a:after {
    width: 100%;
    height: 5px;
    content: "";
    position: absolute !important;
    bottom: 20px;
    left: 0;
    z-index: 1;
    background: -webkit-radial-gradient(50% 50%, ellipse closest-side, #fd644f , rgba(255, 255, 255, 0) 75%);
    background: -moz-radial-gradient(50% 50%, ellipse closest-side, #fd644f , rgba(255, 255, 255, 0) 75%);
    background: -ms-radial-gradient(50% 50%, ellipse closest-side, #fd644f , rgba(255, 255, 255, 0) 75%);
    background: -o-radial-gradient(50% 50%, ellipse closest-side, #fd644f , rgba(255, 255, 255, 0) 75%);
    transform: scale(0);
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    -moz-transform: scale(0);
    -o-transform: scale(0);
}

.px_navigations ul>li>ul>li a:after {
    display: none;
}

.px_navigations ul li a:hover {
    color: #fd644f ;
}


/*----navbar_toogle css---*/

.navbar_header {
    position: relative;
    z-index: 99;
    float: right;
}

.navbar_toggle {
    float: left;
    width: 40px;
    height: 18px;
    cursor: pointer;
    position: relative;
    z-index: 10002;
    pointer-events: auto;
    padding: 0;
    border: 0;
    background: transparent;
}

.navbar_toggle i {
    float: left;
    width: 100%;
    height: 2px;
    background-color: #fff;
    margin-bottom: 4px;
    transition: all ease-in-out 0.3s;
    -webkit-transition: all ease-in-out 0.3s;
    -moz-transition: all ease-in-out 0.3s;
    -ms-transition: all ease-in-out 0.3s;
    -o-transition: all ease-in-out 0.3s;
}

.toggle_open i {
    top: 27px;
    position: absolute;
    left: 0;
}

.toggle_open i:nth-child(1) {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
}

.toggle_open i:nth-child(2) {
    opacity: 0;
}

.toggle_open i:nth-child(3) {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
}


/*----navbar_toogle css---*/


/* first level submenu start */

.px_navigations ul li.dropdown_menu i.caret_down {
    position: absolute;
    content: "";
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid #fff;
    top: 50%;
    right: -15px;
    cursor: pointer;
    margin-top: -2px;
}

.px_navigations ul>li>ul {
    min-width: 250px;
    z-index: 99;
    position: absolute;
    text-align: left;
    background-color: #1C1C1C;
    z-index: 99;
    top: 90%;
    border: 1px solid #313131;
    visibility: hidden;
    opacity: 0;
    left: 0;
}

.px_navigations ul>li:hover>ul,
.px_navigations ul>li:focus>ul {
    visibility: visible;
    opacity: 1;
    top: 61px;
}

.px_navigations ul li ul.sub-menu:after {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 20px;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #1C1C1C;
    z-index: 1;
}

.px_navigations>ul>li>ul>li>a:hover {
    background-color: #fd644f ;
    color: #fff;
}

.px_navigations ul>li>ul>li {
    display: block;
    float: none;
    margin: 0px;
}

.px_navigations ul>li>ul>li>a {
    white-space: nowrap;
    display: block;
    padding: 0px;
    backface-visibility: hidden;
    color: #BFBFBF;
    padding: 10px;
    font-size: 14px;
}

.px_navigations ul>li>ul>li:last-child {
    border-bottom: 0px;
}


/* first level submenu start */


/*second level submenu css start*/

.px_navigations ul.sub-menu li i.caret_down {
    top: 40%;
    right: 4px;
}

.px_navigations ul>li>ul>li {
    position: relative;
}

.px_navigations ul>li>ul>li>ul {
    left: 134%;
    top: 0;
}


/*second level submenu css end*/


/*-- fixed menu css on scroll start ---*/

.wrapper_navigation.fixed_top_menu {
    position: fixed !important;
    top: 0;
    left: 0;
    height: 99px;
    z-index: 999;
    background-color: #030203 !important;
}


/*-- fixed menu css on scroll end ---*/


/*----------------------------------------------------------------------------------
 4. navigation css end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
 5. welcome  css start
----------------------------------------------------------------------------------*/

.px_welcome_wrapper {
    padding-bottom: 50px;
    padding-top: 55px;
}

.px_heading_middle {
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
    color: #fff;
    letter-spacing: 0.075em;
    float: left;
    width: 100%;
}

.px_heading_middle h2 {
    display: inline-block;
    position: relative;
    font-family: 'Ubuntu', sans-serif;
    letter-spacing: 0.075em;
    font-weight: bold;
}

.px_heading_middle h2>span {
    color: #fd644f ;
}

.px_heading_middle h2:after {
    width: 350px;
    height: 5px;
    content: "";
    position: absolute !important;
    bottom: -22px;
    margin-left: -175px;
    left: 50%;
    z-index: 0;
    background: -webkit-radial-gradient(50% 50%, ellipse closest-side, #fd644f , rgba(255, 42, 112, 0) 60%);
    background: -moz-radial-gradient(50% 50%, ellipse closest-side, #fd644f , rgba(255, 42, 112, 0) 60%);
    background: -ms-radial-gradient(50% 50%, ellipse closest-side, #fd644f , rgba(255, 42, 112, 0) 60%);
    background: -o-radial-gradient(50% 50%, ellipse closest-side, #fd644f , rgba(255, 42, 112, 0) 60%);
}

.px_club_services {
    float: left;
    width: 100%;
    margin-top: 65px;
}

/* Esto asegura que la imagen llene el contenedor */
.px_thumb_wrapper img {
    width: 100%;
    height: 416px; /* Puedes ajustar esta altura según prefieras */
    object-fit: cover; /* Mantiene la proporción y recorta lo sobrante */
    display: block;
}

.px_thumb_wrapper {
    position: relative;
    float: left;
    width: 100%;
    perspective: 400px;
    overflow: hidden;
}

.px_club_services .px_thumb_wrapper {
    margin-bottom: 30px;
}

.px_sevice_overlay {
    background-color: #080808;
    display: block;
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9;
    opacity: 0;
}

.px_sevice_overlay .overlay_inner {
    text-align: center;
    padding: 100px 35px 0px;
    float: left;
    width: 100%;
}

.overlay_inner .border {
    display: inline-block;
    border: 2px solid #fd644f ;
    width: 83px;
    height: 83px;
    line-height: 108px;
    text-align: center;
    border-radius: 5px;
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    opacity: 0;
}

.overlay_inner svg {
    fill: #fd644f ;
    width: 36px;
    height: 36px;
}

.overlay_inner h4 {
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 500;
    padding-top: 20px;
    padding-bottom: 10px;
    color: #fff;
    opacity: 0;
    transform: scale(.8);
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    -moz-transform: scale(.8);
    -o-transform: scale(.8);
}

.overlay_inner p {
    color: #e0e0e0;
    line-height: 25px;
    font-size: 15px;
    -webkit-transform: translateX(50px);
    -moz-transform: translateX(50px);
    -ms-transform: translateX(50px);
    -o-transform: translateX(50px);
    opacity: 0;
}

.px_thumb_wrapper:hover .triangle_shape:after {
    border-bottom: 78px solid #fd644f ;
    border-left: 78px solid transparent;
}

.px_thumb_wrapper .triangle_shape:after {
    border-bottom: 0px solid #fd644f ;
    border-left: 0px solid transparent;
}

.px_thumb_wrapper .triangle_shape:before {
    border-top: 0px solid #fd644f ;
    border-right: 0px solid transparent;
}

.px_thumb_wrapper:hover .triangle_shape:before {
    border-top: 78px solid #fd644f ;
    border-right: 78px solid transparent;
}


/*---- tumb_wrapper hover -------*/

.px_thumb_wrapper:hover>.px_sevice_overlay {
    opacity: 1;
}

.px_thumb_wrapper:hover .overlay_inner p {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    opacity: 1;
}

.px_thumb_wrapper:hover .overlay_inner h4,
.px_thumb_wrapper:hover .border {
    opacity: 1;
    transform: scale(1);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -o-transform: scale(1);
}


/*---- tumb_wrapper hover -------*/


/*----------------------------------------------------------------------------------
 5. welcome  css end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
 6. Home event  css start
----------------------------------------------------------------------------------*/

.px_event_wrapper {
    background: url("../images/maestra/pista.webp") no-repeat;
    background-size: cover;
    background-position: 100% 100%;
    background-attachment: fixed;
}

.px_event_wrapper .color_overlay {
    padding-top: 55px;
    padding-bottom: 75px;
}

.px_event_main {
    margin-top: 61px;
}

.px_event_main,
.px_event_cover {
    float: left;
    width: 100%;
}

.px_thumb_wrapper img {
    width: 100%;
}

.px_event_cover .px_thumb_wrapper {
    margin-bottom: 1px;
    background-color: #000;
    overflow: hidden;
    height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.px_event_cover .px_thumb_wrapper:after {
    background-color: transparent;
}

.px_event_cover .bottom_tab {
    display: inline-block;
    width: 100%;
    padding: 12px 20px;
    background-color: #fd644f ;
}

.bottom_tab span {
    color: #ffffff;
    font-size: 15px;
    font-weight: 500;
    margin-right: 20px;
    float: left;
}

.px_event_cover .thumb_overlay {
    background-color: rgba(0, 0, 0, 0.65);
    display: block;
    position: absolute !important;
    z-index: 9;
    opacity: 0;
}

.book_now_button {
    display: inline-block;
    text-align: center;
    width: 100%;
    position: absolute;
    top: 25%;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.px_event_cover .book_now_button {
    transform: translateY(-150%);
    -webkit-transform: translateY(-150%);
    -o-transform: translateY(-150%);
    -moz-transform: translateY(-150%);
    -ms-transform: translateY(-150%);
}

.book_now_button .read_m_btn {
    font-size: 15px;
    text-transform: capitalize;
    background-color: #fd644f ;
    color: #ffffff;
    border-left: none;
    border-right: none;
    font-weight: 500;
    line-height: 42px;
    height: 45px;
    backface-visibility: hidden;
}

.book_now_button .read_m_btn:hover {
    background-color: transparent;
}

.px_event_cover img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.px_event_cover .overlay_inner_bottom {
    bottom: 0;
    position: absolute !important;
    width: 100%;
    padding: 10px 22px;
    background-color: rgba(0, 0, 0, 0.75);
    transform: translateY(100%);
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transition: all 0.2s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
}

.px_event_cover:hover .overlay_inner_bottom{
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
}

.px_event_cover:hover .book_now_button{
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
}

.px_event_cover:hover .thumb_overlay {
    opacity: 1;
}

.overlay_inner_bottom h4 {
    font-size: 20px;
    text-transform: uppercase;
    font-weight: 500;
    padding-bottom: 0px;
    color: #ffffff;
    font-family: 'Ubuntu', sans-serif;
}

.overlay_inner_bottom p {
    color: #f2f2f2;
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 0;
}

/*------ crousel dots css start -------*/

.owl-dot.active span {
    background-color: #fd644f ;
}

.owl-dots .owl-dot:last-child span {
    margin-right: 0;
}


/*------ crousel dots css end -------*/

/* ===================================
   Cartelera de eventos
=================================== */

.contenedor-afiche{
    max-width:500px;
    width:100%;
    height:100%;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    background-color:#000;
    overflow:hidden;
}

.contenedor-afiche .event-poster{
    width:auto;
    height:auto;
    max-width:100%;
    max-height:100%;
}

.event-poster{
    width:100%;
    height:100%;
    object-fit:contain;
    background-color:#000;
    border-radius:8px;
    box-shadow:0 4px 10px rgba(0,0,0,.3);
    display:block;
    cursor:pointer;
}

.px_event_cover .event-poster {
    width:100%;
    height:100%;
    object-fit:contain;
    aspect-ratio:auto;
}

.cartelera-footer {
    clear: both;
    padding-top: 70px;
    text-align: center;
}


/*----------------------------------------------------------------------------------
  6. Home event  css end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  7. Home gallery  css start
----------------------------------------------------------------------------------*/

.px_gallery_wrapper {
    padding-bottom: 80px;
    padding-top: 55px;
    background: url('../images/bg/pattern_bg.webp') no-repeat;
    background-size: cover;
}

.dynamic-fotos-carousel .item {
    background-color: #000;
}

.dynamic-fotos-carousel .item > a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 520px;
    overflow: hidden;
}

.dynamic-fotos-carousel .item > a img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.mural-carousel .item {
    background-color: #000;
}

.mural-carousel .item > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: min(100%, 1100px);
    height: 500px;
    margin: 0 auto;
    overflow: hidden;
}

.mural-carousel .item > a img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.home_gallery {
    margin-top: 61px;
}

.middle_inner {
    float: left;
    width: 100%;
    margin-top: 60px;
}

/*----------------------------------------------------------------------------------
  7. Home gallery  css end
----------------------------------------------------------------------------------*/

/*----------------------------------------------------------------------------------
  11. Home Blog css start
----------------------------------------------------------------------------------*/

.px_blog_section {
    padding-top: 80px;
    background: url('../images/bg/pattern_bg.webp') no-repeat;
    background-size: cover;
}

.px_blog_section .px_heading_middle h2 {
    margin-top: -4px;
}

.blog_thumb {
    float: left;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.blog_thumb img {
    height: auto;
    width: 100%;
}

.blog_desc {
    float: left;
    width: 100%;
}

.blog_desc h3 {
    font-size: 20px;
    color: #fff;
    margin-top: 30px;
    margin-bottom: 12px;
    font-weight: 500;
}

.blog_desc.home_desc h3 {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 19ch;
}

.blog_desc h3 a {
    color: #ffffff;
}

.blog_desc h3 a:hover {
    color: #fd644f ;
}

.blog_desc .px_comments {
    font-size: 15px;
    font-weight: 500;
    color: #fd644f ;
    line-height: 23px;
    opacity: .7;
    backface-visibility: hidden;
}

.blog_desc .px_comments span {
    position: relative;
    display: inline-block;
    margin-right: 10px;
    font-weight: 600;
}

.blog_desc .px_comments span:after {
    content: "";
    position: absolute !important;
    width: 2px;
    height: 17px;
    background-color: #fd644f ;
    transform: rotate(18deg);
    -webkit-transform: rotate(18deg);
    -ms-transform: rotate(18deg);
    -o-transform: rotate(18deg);
    -moz-transform: rotate(18deg);
    top: 4px;
    right: -8px;
}

.blog_desc .px_comments span:last-child:after {
    display: none;
}

.blog_desc p {
    color: #e0e0e0;
    font-size: 15px;
    line-height: 25px;
    padding-top: 20px;
}

.thumb_overlay {
    position: absolute !important;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.blog_thumb .thumb_overlay {
    background-color: rgba(0, 0, 0, 0.5);
    transform: scale(1.3);
    -webkit-transform: scale(1.3);
    -moz-transform: scale(1.3);
    -ms-transform: scale(1.3);
    -o-transform: scale(1.3);
    opacity: 0;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
}

.blog_cover .blog_thumb:hover .thumb_overlay {
    transform: scale(1);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    opacity: 1;
}


/*----------------------------------------------------------------------------------
  11. Home Blog css end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  12. subscribe css start
----------------------------------------------------------------------------------*/

.px_subscribe_section {
    background-color: #000000;
    padding: 57px 0 80px;
}

.px_subscribe_cover h3 {
    color: #ffffff;
    font-size: 20px;
    font-weight: 500;
}

.px_subscribe_cover h4 {
    color: #e0e0e0;
    font-size: 15px;
    line-height: 23px;
    font-family: 'Ubuntu', sans-serif;
    text-transform: inherit;
    font-weight: 100;
}

.px_subscribe_cover h4 span {
    color: #fd644f ;
}

.subscribe_input {
    display: inline-block;
    width: 100%;
    margin-top: 35px;
}

.subscribe_input input {
    background-color: transparent;
    border-bottom: 2px solid #ffffff !important;
    border: none;
    padding: 0px 20px;
    font-size: 15px;
    line-height: 23px;
    color: #e0e0e0;
    height: 50px;
    margin-right: 26px;
    width: 35%;
}

.subscribe_input button {
    background: transparent;
    border-left: transparent;
    border-right: transparent;
    border-color: #ffffff;
    height: 50px;
    line-height: 48px;
    font-size: 15px;
    font-weight: 500;
    text-transform: uppercase;
    padding: 0 30px;
    color: #fefefe;
    letter-spacing: 0.025em;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
}

.subscribe_input button:hover {
    color: #fd644f ;
    border-color: #fd644f ;
}

.subscribe_input button:hover:after,
.subscribe_input button:hover:before {
    opacity: 1;
}

.subscribe_input .triangle_btn:after,
.subscribe_input .triangle_btn:before {
    opacity: 0;
}


/*----------------------------------------------------------------------------------
  12. subscribe css end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  13. footer css start
----------------------------------------------------------------------------------*/

.px_footer_area {
    font-family: 'Ubuntu', sans-serif;
    /* background: url("../images/bg/footerbg.jpg") no-repeat; */
    background: url("../images/maestra/MuralZapata.webp") no-repeat;
    background-size: cover;
    background-position: 100%;
}

.px_footer_area .color_overlay {
    padding: 80px 0px;
}

.widget,
.footer_logo,
.widget_text {
    float: left;
    width: 100%;
}

/* Ajuste de la imagen del logo */
.footer_logo img {
    /* La altura depende de qué tan grandes sean tus letras. 
       Prueba entre 30px y 50px */
    height: 10rem; 
    width: auto; /* Mantiene la proporción original */
    display: block;
    transition: all 0.3s ease; /* Para que se vea fluido si cambias el tamaño */
}

/* Alineación del contenedor del logo */
.footer_logo {
    display: flex;
    align-items: center;
    height: 100%; /* Ocupa el alto disponible para centrar */
}

.widget h3 {
    font-size: 20px;
    color: #fd644f ;
    font-family: 'Ubuntu', sans-serif;
}

.px_footer_area .widget .widget-title {
    font-size: 20px;
    color: #fd644f ;
    margin-bottom: 65px;
    font-family: 'Ubuntu', sans-serif;
    margin-top: 0px;
}

.widget_text p {
    font-size: 15px;
    color: #e0e0e0;
    line-height: 25px;
}

.widget ul {
    list-style: none;
    padding: 0 !important;
    margin: 0;
    float: left;
    width: 100%;
}

.widget.px_recent_post ul li {
    width: 100%;
    float: left;
    padding-bottom: 30px;
    border-bottom: 1px solid #232323;
    margin-bottom: 30px;
}

.widget.px_recent_post ul li img {
    float: left;
    width: 100px;
    height: 91px;
    margin-right: 20px;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -moz-transition: all 0.5s;
}

.widget.px_recent_post ul li:hover img {
    -webkit-filter: brightness(.5);
    filter: brightness(.5);
}

.widget.px_recent_post ul li div {
    display: inline;
}

.widget.px_recent_post ul li div p {
    color: #e0e0e0;
    line-height: 25px;
    font-size: 15px;
}

.widget.px_recent_post ul li div span {
    color: #fd644f ;
    font-size: 15px;
    font-weight: 500;
}


/*recent tweets start*/

.widget.px_recent_twitt ul li {
    width: 100%;
    float: left;
    padding-bottom: 30px;
    border-bottom: 1px solid #232323;
    margin-bottom: 30px;
}

.widget.px_recent_twitt ul li i {
    float: left;
    color: #fd644f ;
    margin-right: 20px;
    line-height: 30px;
    font-size: 18px;
    -webkit-transition: all 500ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -moz-transition: all 500ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -o-transition: all 500ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    transition: all 500ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    /* easeInOutQuad */
    -webkit-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -moz-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -o-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    /* easeInOutQuad */
}

.px_recent_twitt ul li:hover i {
    transform: translateY(50%);
    -webkit-transform: translateY(50%);
    -moz-transform: translateY(50%);
    -ms-transform: translateY(50%);
    -o-transform: translateY(50%);
}

.widget.px_recent_twitt ul li div {
    float: left;
    width: 80%;
}

.widget.px_recent_twitt ul li div p {
    color: #e0e0e0;
    line-height: 25px;
    font-size: 15px;
}

.widget.px_recent_twitt ul li div span {
    color: #fd644f ;
    font-size: 15px;
    font-weight: 500;
}


/*recent tweets end*/


/*----------------------------------------------------------------------------------
  13. footer css end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  14. footer bottom start
----------------------------------------------------------------------------------*/

.px_footer_strip {
    background-color: #000000;
    padding: 50px 0px;
}

.px_footer_strip .footer_text {
    color: #e0e0e0;
    font-size: 15px;
    margin-bottom: 0;
    margin-top: 8px;
}

.px_footer_strip .developer_credit a {
    color: #fff;
    text-decoration: none;
}

.social_icons.footer_social svg {
    fill: #fff;
    width: 13px;
    height: 13px;
}

.social_icons a:hover svg {
    fill: #fd644f ;
}


/*----------------------------------------------------------------------------------
  14. footer bottom end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  15. about us page css start
----------------------------------------------------------------------------------*/

.px_breadcum {
    float: left;
    width: 100%;
    padding: 63px 0 90px;
}


/*----------------------------------------------------------------------------------
  15. about us page css end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  16. offer section css start
----------------------------------------------------------------------------------*/

.px_offers_section {
    background-color: #000000;
    padding-top: 55px;
    padding-bottom: 50px;
}

.px_offers_main {}

.offers_box_wrapper {
    float: left;
    width: 100%;
    background-color: #080808;
    margin-bottom: 30px;
}

.offers_box_wrapper .box_thumb {
    float: left;
    margin-right: 30px;
    overflow: hidden;
}

.offers_box_wrapper img {
    float: left;
    width: 170px;
    height: 207px;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -moz-transition: all 0.5s;
}

.offers_box_wrapper .right_details {
    padding: 30px 30px 0px;
}

.right_details h4 {
    color: #fff;
    font-size: 20px;
    text-transform: uppercase;
    margin-top: -1px;
    margin-bottom: 20px;
    font-weight: 500;
    backface-visibility: hidden;
}

.right_details h4 a {
    color: #fff;
}

.right_details p {
    color: #e0e0e0;
}

.offers_box_wrapper .right_details h4 a:hover {
    color: #fd644f ;
}

.offers_box_wrapper:hover img {
    transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
}


/*----------------------------------------------------------------------------------
  16. offer section css end
----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  16. club crousel css start
----------------------------------------------------------------------------------*/

.club_disc_section {
    padding-bottom: 80px;
}

.px_club_cover {
    float: left;
    width: 100%;
}

.overlay_bottom {
    position: absolute !important;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1;
}

.px_club_cover .overlay_bottom h3 {
    color: #ffffff;
    font-size: 20px;
    text-align: center;
    margin: 0;
    padding: 28.5px 0px;
    font-weight: 500;
}

.px_club_cover .overlay_bottom {
    background-color: rgba(0, 0, 0, 0.85);
    bottom: -50%;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
}

.px_club_cover:hover .px_thumb_wrapper img {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
}

.px_thumb_wrapper img {
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -ms-transition: all 0.4s;
}

.px_club_cover:hover .overlay_bottom {
    bottom: 0;
    opacity: 1;
}

.px_club_cover .thumb_overlay {
    transform: scale(1.3);
    -webkit-transform: scale(1.3);
    -moz-transform: scale(1.3);
    -ms-transform: scale(1.3);
    -o-transform: scale(1.3);
}

.px_club_cover:hover .thumb_overlay {
    transform: scale(1);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
}

.px_thumb_wrapper .triangle_btn:hover:after {
    border-bottom: 23px solid #fd644f ;
    border-left: 23px solid transparent;
    opacity: 1;
}

.px_thumb_wrapper .triangle_btn:hover:before {
    border-top: 23px solid #fd644f ;
    border-right: 23px solid transparent;
    opacity: 1;
}


/*----------------------------------------------------------------------------------
  17. club crousel css end
 ----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  18. blog page css start
 ----------------------------------------------------------------------------------*/

.px_blog_cover {
    float: left;
    width: 100%;
    margin-bottom: 80px;
}

.px_blog_cover .thumb_overlay {
    background-color: rgba(0, 0, 0, 0.75);
}

.blog_thumb:hover .thumb_overlay {
    transform: scale(1);
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    opacity: 1;
}

.blog_readmore {
    float: left;
    width: 100%;
    text-align: right;
}

.blog_desc .blog_readmore {
    margin-top: 17px;
}

.blog_readmore .read_m_btn {
    border-top-color: #fff;
    border-bottom-color: #fff;
    padding: 0 25px;
}

.read_m_btn {
    display: inline-block;
    text-align: center;
    color: #fff;
    text-transform: uppercase;
    font-size: 15px;
    height: 50px;
    line-height: 48px;
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
    padding: 0 27px;
    letter-spacing: 0.025em;
    font-weight: 500;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
}

.read_m_btn:hover {
    color: #fd644f ;
    border-color: #fd644f  !important;
}

.read_m_btn.triangle_btn:after,
.read_m_btn.triangle_btn:before {
    opacity: 0;
}

.read_m_btn:hover:after,
.read_m_btn:hover:before {
    opacity: 1;
}


/*-- pagination css start --*/

.blog_pagination {
    float: left;
    width: 100%;
    text-align: center;
    padding-bottom: 80px;
}

.blog_pagination .pagination {
    margin: 0px;
    display: inline-block;
    padding-left: 0;
}

.blog_pagination .pagination i {
    color: #fff;
    font-size: 27px;
    top: 3px;
    position: relative;
}

.blog_pagination ul .nav-previous a,
.blog_pagination ul .nav-next a {
    border-color: transparent !important;
}

.blog_pagination ul .nav-previous a:hover:before,
.blog_pagination ul .nav-next a:hover:before,
.blog_pagination ul .nav-previous a:hover:after,
.blog_pagination ul .nav-next a:hover:after {
    display: none;
}

.blog_pagination ul .nav-previous a {
    margin-right: 15px;
}

.blog_pagination ul .nav-next a {
    margin-right: 0px;
    margin-left: -5px;
}

.blog_pagination ul li {
    display: inline-block;
}

.blog_pagination ul li a {
    position: relative;
    margin-right: 17px;
    float: left;
    width: 37px;
    height: 37px;
    line-height: 35px;
    border: 2px solid #fff;
    color: #ffffff;
    font-size: 15px;
    font-weight: 500;
    backface-visibility: hidden;
}

ul.pagination li a:hover {
    color: #fd644f ;
}

ul.pagination>li>a:focus,
ul.pagination>li>a:hover,
ul.pagination i:hover {
    z-index: 2;
    color: #fd644f ;
}

.pagination li a,
.pagination li i {
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
}

.blog_pagination ul li a:after,
.blog_pagination ul li a:before {
    content: "";
    position: absolute !important;
    width: 0;
    height: 0;
    opacity: 0;
    transition: all 0.2s;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
}

.blog_pagination ul li a:before {
    left: -2px;
    top: -2px;
    border-top: 0px solid transparent;
    border-right: 0px solid transparent;
}

.blog_pagination ul li a:after {
    right: -2px;
    bottom: -2px;
    border-bottom: 0px solid transparent;
    border-left: 0px solid transparent;
}

.pagination li a:hover,
.pagination li.active a {
    border-color: #fd644f ;
    border-left-color: transparent;
    border-right-color: transparent;
}

.pagination li.active a:after {
    border-bottom: 14px solid #fd644f ;
    border-left: 14px solid transparent;
}

.pagination li.active a:before {
    border-top: 14px solid #fd644f ;
    border-right: 14px solid transparent;
}

.pagination li a:hover:after {
    opacity: 1;
    border-bottom: 14px solid #fd644f ;
    border-left: 14px solid transparent;
}

.pagination li a:hover:before {
    opacity: 1;
    border-top: 14px solid #fd644f ;
    border-right: 14px solid transparent;
}

.pagination li.active a {
    color: #fd644f ;
}

.pagination li.active a:after,
.pagination li.active a:before {
    opacity: 1;
}


/*-- pagination css end --*/


/*----------------------------------------------------------------------------------
  18. blog page css end
 ----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  19. blog sidebar css start
 ----------------------------------------------------------------------------------*/

.widget ul li span,
.widget a {
    transition: all ease-in-out 0.25s;
    -webkit-transition: all ease-in-out 0.25s;
    -moz-transition: all ease-in-out 0.25s;
    -ms-transition: all ease-in-out 0.25s;
    -o-transition: all ease-in-out 0.25s;
}

.px_blog_sidebar {
    float: left;
    width: 100%;
}

.px_blog_sidebar .widget {
    margin-bottom: 80px;
}

.px_search_form {
    position: relative;
}

.px_search_form input {
    background: transparent;
    border: none;
    border-bottom: 1px solid #fd644f ;
    width: 100%;
    color: #e0e0e0;
    padding: 0px 50px 20px 28px;
    font-size: 15px;
}

.px_search_form button {
    background: transparent;
    border: none;
    position: absolute !important;
    color: #e0e0e0;
    top: 0;
    right: 27px;
}

.px_blog_sidebar .widget .widget_title {
    color: #fff;
    margin-top: 0;
    margin-bottom: 30px;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.01em;
}

.textwidget {
    width: 100%;
    float: left;
}


/*--------category css start-------*/

.px_categories_list ul li {
    float: left;
    width: 100%;
    margin-bottom: 10px;
}

.px_categories_list ul li a,
.px_categories_list ul li span {
    color: #e0e0e0;
    text-transform: capitalize;
    font-weight: 500;
}

.px_categories_list ul li span {
    float: right;
}

.px_categories_list ul li:hover span,
.px_categories_list ul li:hover a {
    color: #fd644f ;
}


/*--------category css end-------*/


/*--------recent posts css start-------*/

.px_blog_sidebar .px_recent_posts ul li {
    float: left;
    width: 100%;
    margin-bottom: 30px;
    background-color: #000000;
    padding-right: 13px;
}

.px_blog_sidebar .px_recent_posts ul li:last-child {
    margin-bottom: 0px;
}

.px_blog_sidebar .px_recent_posts ul li img {
    float: left;
    width: 120px;
    height: 114px;
    margin-right: 13px;
}

.px_blog_sidebar .px_recent_posts ul li div a {
    color: #ffffff;
    font-size: 20px;
    text-transform: uppercase;
    display: block;
    margin-top: 15px;
    margin-bottom: 10px;
    font-weight: 500;
}

.px_recent_posts ul li div a:hover {
    color: #fd644f ;
}

.px_blog_sidebar .px_recent_posts ul li div p {
    color: #e0e0e0;
}

.tagcloud a {
    position: relative;
    float: left;
    margin-right: 20px;
    margin-bottom: 20px;
    color: #ffffff;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    height: 40px;
    line-height: 38px;
    border-top: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
    padding: 0 16px;
}

.tagcloud a:after,
.tagcloud a:before {
    position: absolute !important;
    content: "";
    width: 0;
    height: 0;
}

.tagcloud a:before {
    top: 0;
    left: 0;
    border-top: 0px solid #fd644f ;
    border-right: 0px solid transparent;
}

.tagcloud a:after {
    bottom: 0;
    right: 0;
    border-bottom: 0px solid #fd644f ;
    border-left: 0px solid transparent;
}

.tagcloud a:hover {
    color: #fd644f ;
    border-color: #fd644f ;
}

.tagcloud a:hover:before {
    top: 0;
    left: 0;
    border-top: 15px solid #fd644f ;
    border-right: 15px solid transparent;
}

.tagcloud a:hover:after {
    bottom: 0;
    right: 0;
    border-bottom: 15px solid #fd644f ;
    border-left: 15px solid transparent;
}


/*--------recent posts css end-------*/


/*--- sidebar gallery css start ----*/

.sidebar_gallery {
    float: left;
    width: 100%;
}

.sidebar_gallery a {
    float: left;
    width: 90px;
    height: 90px;
}

.sidebar_gallery a img {
    width: 100%;
    height: 100%;
    transition: all ease-in-out 0.25s;
    -webkit-transition: all ease-in-out 0.25s;
    -moz-transition: all ease-in-out 0.25s;
}

.sidebar_gallery img:hover {
    -webkit-filter: sepia(100%);
    filter: sepia(100%);
}


/* fancy box navigation css start */

a.fancybox-nav.fancybox-prev span,
a.fancybox-nav.fancybox-next span {
    background-image: none;
}

a.fancybox-nav.fancybox-prev span:after,
a.fancybox-nav.fancybox-next span:after {
    display: inline-block;
    font: normal normal normal 19px/1 FontAwesome;
    text-rendering: auto;
    color: #ffffff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute !important;
    top: 50%;
    border: 2px solid;
    width: 37px;
    position: absolute !important;
    height: 37px;
    line-height: 37px;
    text-align: center;
}

a.fancybox-nav.fancybox-prev span:after {
    content: "\f0d9";
    left: 0;
    padding-right: 4px;
}

a.fancybox-nav.fancybox-next span:after {
    content: "\f0da";
    right: 0;
    padding-left: 4px;
}


/* fancy box navigation css end */


/*--- sidebar gallery css end ----*/


/*----------------------------------------------------------------------------------
  19. blog sidebar css end
 ----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  20. blog center css start
 ----------------------------------------------------------------------------------*/

.blog_center .blog_thumb img {
    width: 100%;
}

.blog_center .blog_desc {
    text-align: center;
    padding-left: 85px;
    padding-right: 85px;
}

.blog_center .blog_readmore {
    text-align: center;
}


/*----------------------------------------------------------------------------------
  20. blog center css end
 ----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  21. blog full width css start
 ----------------------------------------------------------------------------------*/

.blog_full_main_cover .blog_pagination {
    padding-top: 80px;
}

/*----------------------------------------------------------------------------------
  21. blog full width css end
 ----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  22. blog single css start
 ----------------------------------------------------------------------------------*/

.px_blog_comments_section {
    float: left;
    width: 100%;
    padding-top: 70px;
}

h2.comment_title {
    color: #ffffff;
    margin: 0px;
    font-weight: bold;
    font-size: 30px;
}

.comment_list {
    float: left;
    width: 100%;
}

.comment_list ul {
    float: left;
    width: 100%;
}

.comment_list ul:first-child {
    padding-left: 0;
}

.comment_list ul li {
    float: left;
    width: 100%;
    list-style: none;
}

.px_specific_comment {
    float: left;
    width: 100%;
    margin-top: 50px;
}

.px_specific_comment .blog_avtar {
    float: left;
    margin-right: 30px;
}

.blog_avtar a {
    display: block;
}

.blog_avtar img {
    width: 110px;
    height: 110px;
}

.right_avtar_details h3 {
    display: inline-block;
    margin-top: -2px;
    margin-bottom: 20px;
    text-transform: capitalize;
    color: #fff;
    font-size: 20px;
    font-weight: 500;
}

.right_avtar_details span {
    color: #fd644f ;
    font-weight: 500;
    margin-left: 5px;
    line-height: 23px;
    font-size: 15px;
    font-weight: 500;
}

.right_avtar_details p {
    color: #b0b0b0;
    margin-bottom: 0px;
    font-size: 15px;
    line-height: 25px;
}

.right_avtar_details .read_m_btn {
    float: right;
    margin-top: 25px;
    cursor: pointer;
    width: 140px;
    padding: 0;
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
}

.comment_list ul li ul.children {
    padding-left: 14.6%;
}

.px_comment_form {
    float: left;
    width: 100%;
    padding-top: 70px;
}

.px_comment_form .comment_title {
    margin-bottom: 50px;
}

.px_form {
    float: left;
    width: 100%;
}

.px_form input {
    width: 100%;
    background-color: #040404;
    border: 1px solid #646464;
    padding-left: 20px;
    height: 65px;
    color: #ffffff;
    margin-bottom: 20px;
}

.px_form textarea {
    width: 100%;
    background-color: #040404;
    border: 1px solid #646464;
    padding-left: 20px;
    height: 290px;
    color: #ffffff;
    padding-top: 20px;
    margin-bottom: 20px;
}

.px_form input:focus,
.px_form input:hover {
    border-color: #fd644f ;
    background-color: transparent;
}

.px_form textarea:focus,
.px_form textarea:hover {
    border-color: #fd644f ;
    background-color: transparent;
    outline: none;
}

.px_form .read_m_btn {
    background-color: transparent;
    border-left: transparent;
    border-right: transparent;
    float: right;
    width: 140px;
    padding: 0px;
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
    cursor: pointer;
    backface-visibility: hidden;
}

.px_form .read_m_btn:hover {
    border-top: 2px solid #fd644f ;
    border-bottom: 2px solid #fd644f ;
}


/*----------------------------------------------------------------------------------
  22. blog single css end 
 ----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  23. event page css start 
 ----------------------------------------------------------------------------------*/

.px_event_section {
    background: url('../images/bg/pattern_bg.webp') no-repeat;
    background-size: cover;
}

.event_page_main {
    float: left;
    width: 100%;
    padding-top: 80px;
}

.event_page_main .px_event_cover {
    float: left;
    width: 100%;
    margin-bottom: 80px;
}

.button_center {
    float: left;
    width: 100%;
    text-align: center;
}

.button_center .read_m_btn {
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
}


/*----------------------------------------------------------------------------------
  23. event page css end 
 ----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  24. contact page css start 
 ----------------------------------------------------------------------------------*/

.contact_section_main,
.px_contanct_form,
.right_map_part {
    float: left;
    width: 100%;
}

.px_contanct_form .px_form input {
    margin-bottom: 32px;
}

.px_contanct_form .px_form textarea {
    margin-bottom: 30px;
}

.contact_details_ract,
.location_map {
    float: left;
    width: 100%;
}

.contact_details_ract {
    background-color: #fd644f ;
    padding: 30px;
    position: relative;
    border-bottom: 1px solid #ef2869;
}

.contact_details_ract:after {
    content: "";
    position: absolute !important;
    width: 0;
    height: 0;
    display: block;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
    border-top: 18px solid #fd644f ;
    bottom: -18px;
    left: 50%;
    margin-left: -18px;
    z-index: 9;
}

.contact_details_ract ul {
    margin: 0;
    list-style: none;
    padding: 0;
    float: left;
    width: 100%;
}

.contact_details_ract ul li {
    float: left;
    width: 50%;
    padding-right: 15px;
}

.contact_details_ract ul li div {
    float: left;
    width: 100%;
    margin-bottom: 30px;
}

.contact_details_ract ul li svg,
.contact_details_ract ul li i {
    float: left;
    font-size: 20px;
    margin-right: 20px;
    fill: #ffffff;
    color: #ffffff;
    margin-top: 4px;
}

.contact_details_ract ul li p {
    float: left;
    width: 80%;
    color: #ffffff;
    line-height: 24px;
    font-size: 15px;
    margin-bottom: 0;
}

.contact_details_ract ul li a {
    color: #fff;
}

#big_googleMap {
    width: 100%;
    height: 421px;
}


/*----------------------------------------------------------------------------------
  24. contact page css end 
 ----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  26. gallery css start 
 ----------------------------------------------------------------------------------*/

.px_gallery_section {
    background: url('../images/bg/pattern_bg.webp') no-repeat;
    background-size: cover;
}

.px_photo_galley {
    float: left;
    width: 100%;
}

.gallery_cover {
    float: left;
    width: 100%;
}

.photo_grid {
    float: left;
}

.photo_grid.width_1 {
    width: 29.62%;
}

.photo_grid.width_2 {
    width: 21.61%;
}

.photo_grid.width_3 {
    width: 30.56%;
}

.photo_grid.width_4 {
    width: 18.21%;
}

.photo_grid.width_5 {
    width: 35.19%;
}

.margin-top {
    margin-top: -1.34%;
}

.px_photo_galley .photo_grid a {
    float: left;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.px_photo_galley .photo_grid a img {
    width: 100%;
}

.gallery_cover .triangle_shape:after {
    border-bottom: 0px solid #fd644f ;
    border-left: 0px solid transparent;
}

.gallery_cover .triangle_shape:before {
    border-top: 0px solid #fd644f ;
    border-right: 0px solid transparent;
}

.gallery_cover:hover .triangle_shape:after {
    border-bottom: 78px solid #fd644f ;
    border-left: 78px solid transparent;
}

.gallery_cover:hover .triangle_shape:before {
    border-top: 78px solid #fd644f ;
    border-right: 78px solid transparent;
}

.gallery_overlay {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.75);
    opacity: 0;
}

.px_photo_galley a:hover .gallery_overlay {
    opacity: 1;
}

.zoom_anim {
    text-align: left;
    max-width: 970px;
    margin: 0px auto;
    position: relative;
}

.my_zoom_in .zoom_anim {
    opacity: 0;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}

.my_zoom_in.mfp-ready .zoom_anim {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}

.gallery_thumb {
    position: relative;
    float: left;
    width: 100%;
}

.gallery_thumb .overlay {
    position: absolute !important;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.zoom_anim img {
    width: 100%;
}

.gallery_desc {
    background-color: #000000;
    padding: 30px;
    float: left;
    width: 100%;
    margin-top: 10px;
}

.gallery_desc h3 {
    margin-top: 0;
    color: #ffffff;
    font-size: 20px;
    margin-bottom: 20px;
}

.gallery_desc p {
    color: #e0e0e0;
    font-size: 15px;
    line-height: 25.6px;
    margin-bottom: 30px;
}

.gallery_desc .read_m_btn {
    float: right;
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
}


/* gallery arrow button css start */

/* ==========================================
   Gallery - Flechas modernas
========================================== */

.my_zoom_in .mfp-arrow.active {
    margin-top: 0;
}

.mfp-arrow {
    width: 56px;
    height: 56px;
    margin-top: -28px;
    border-radius: 50%;
    background: rgba(0,0,0,.65);
    border: none;
    opacity: 1;
    transition: all .25s ease;
}

.mfp-arrow:hover {
    background: #fd644f;
    transform: scale(1.08);
}

/* Eliminar sólo la decoración original */
.mfp-arrow::after {
    display: none !important;
}

/* Dibujar las nuevas flechas */
.mfp-arrow::before {
    display: block !important;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    font-size: 28px;
    font-family: Arial, sans-serif;
    border: none !important;
    width: auto;
    height: auto;
}

/* Flecha izquierda */
.mfp-arrow-left::before {
    content: "‹";
}

/* Flecha derecha */
.mfp-arrow-right::before {
    content: "›";
}

.mfp-arrow:hover::before {
    color: #fff;
}

/* Posición */

.mfp-arrow-left {
    left: 30px;
}

.mfp-arrow-right {
    right: 30px;
}
/* gallery arrow button css end */


/*----------------------------------------------------------------------------------
  26. gallery css end 
 ----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
  27. video gallery page css start 
 ----------------------------------------------------------------------------------*/

.px_video_thumb .triangle_shape:after {
    border-bottom: 0px solid #fd644f ;
    border-left: 0px solid transparent;
}

.px_video_thumb .triangle_shape:before {
    border-top: 0px solid #fd644f ;
    border-right: 0px;
}

.px_video_thumb:hover .triangle_shape:after {
    border-bottom: 78px solid #fd644f ;
    border-left: 78px solid transparent;
}

.px_video_thumb:hover .triangle_shape:before {
    border-top: 78px solid #fd644f ;
    border-right: 78px solid transparent;
}

.video_gallery_wrapper {
    background: url('../images/bg/pattern_bg.webp') no-repeat;
    background-size: cover;
}

.video_popup_gallery img.img-responsive {
    width: 100%;
}

.px_video_gallery {
    float: left;
    width: 100%;
}

.px_video_thumb img {
    -webkit-transition: all 300ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -moz-transition: all 300ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -o-transition: all 300ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    transition: all 300ms cubic-bezier(0.455, 0.030, 0.515, 0.955);
    /* easeInOutQuad */
    -webkit-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -moz-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    -o-transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    transition-timing-function: cubic-bezier(0.455, 0.030, 0.515, 0.955);
    /* easeInOutQuad */
}

.px_video_thumb:hover img {
    transform: scale(1.2);
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
}

.px_video_gallery .px_video_thumb {
    float: left;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.px_video_thumb a {
    float: left;
    width: 100%;
    position: relative;
}

.px_video_thumb .overlay {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.75);
    visibility: hidden;
    opacity: 0;
    transition: all ease-in-out 0.6s;
    -ms-transition: all ease-in-out 0.6s;
    -o-transition: all ease-in-out 0.6s;
    -moz-transition: all ease-in-out 0.6s;
    -webkit-transition: all ease-in-out 0.6s;
}

.px_video_thumb .overlay_button img,
.px_video_thumb .overlay_button i {
    position: absolute !important;
    top: 50%;
    left: 50%;
    margin-top: -44px;
    margin-left: -44px;
    width: 88px;
    height: 88px;
}

.px_video_thumb:hover .overlay {
    opacity: 1;
    visibility: visible;
}

.video_zoom {
    text-align: left;
    max-width: 1100px;
    margin: 0px auto;
    position: relative;
}

.my_zoom_in .video_zoom {
    opacity: 0;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
}

.my_zoom_in.mfp-ready .video_zoom {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}

.my-mfp-zoom-in.mfp-removing .video_zoom {
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0;
}

.video_zoom.triangle_shape:after {
    border-bottom: 98px solid #fd644f ;
    border-left: 98px solid transparent;
}

.video_zoom.triangle_shape:before {
    border-top: 98px solid #fd644f ;
    border-right: 98px solid transparent;
}


/* video controllers css start */

.video_zoom .mejs-container.svg.mejs-video {
    width: 100% !important;
    height: 673px !important;
    overflow: hidden;
}

.video_zoom .mejs-mediaelement {
    overlflow: hidden;
}

.video_zoom .mejs-mediaelement,
.video_zoom .mejs-poster {
    width: 100% !important;
    height: 100% !important;
}

.video_zoom .mejs-poster img {
    display: block !important;
}

.video_zoom .mejs-overlay {
    width: 100% !important;
    height: 100% !important;
}

.video_zoom video {
    width: 100%;
    height: auto;
}

.video_zoom .mejs-container .mejs-controls {
    background: rgba(8, 8, 8, 0.97);
    height: 100px;
    padding: 0 100px;
    visibility: visible;
}

.video_zoom .mejs-time-rail {
    width: 100% !important;
    position: relative;
    padding: 0px !important;
    margin-top: 20px !important;
}

.video_zoom .mejs-time-total,
.video_zoom .mejs-time-rail .mejs-time-loaded {
    width: 100% !important;
    height: 8px;
}

.video_zoom .mejs-time-current {
    height: 8px !important;
}

.video_zoom .mejs-button {
    position: absolute !important;
    bottom: 20px;
}

.video_zoom .mejs-time {
    position: absolute;
    top: 46px;
    left: 26%;
}

.video_zoom .mejs-button.mejs-volume-button {
    right: 20.5%;
}

.video_zoom .mejs-controls a.mejs-horizontal-volume-slider {
    width: 124px;
    position: absolute !important;
    right: 9.1%;
    top: 44px;
    display: block !important;
}

.video_zoom .mejs-horizontal-volume-current {
    background-color: transparent !important;
}

.video_zoom .mejs-playpause-button {
    border: 2px solid #fff !important;
    border-radius: 5em;
    padding: 8px 0 0 10px !important;
    width: 35px !important;
    height: 35px !important
}

.video_zoom .mejs-playpause-button button {
    margin: 0px !important;
}

.video_zoom .mejs-button.mejs-loop-button {
    left: 15%;
}

.video_zoom .mejs-overlay-button {
    background: url('../images/icon/Play_btn.svg') no-repeat;
}

.video_zoom .mejs-overlay:hover .mejs-overlay-button {
    background-position: inherit;
}

.mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-handle {
    position: absolute;
    left: 0;
}


/* video controllers css end */


/*----------------------------------------------------------------------------------
  27. video gallery page css end 
 ----------------------------------------------------------------------------------*/


/*----------------------------------------------------------------------------------
 28. preloader css start
 ----------------------------------------------------------------------------------*/

.px_preloader {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1212121;
    width: 100%;
    height: 100%;
    text-align: center;
    background-image: url("https://dummyimage.com/1920x1158/");
}

.loader_overlay {
    position: relative;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: #080808;
}

.loader_image {
    position: absolute !important;
    left: 50%;
    top: 50%;
    margin: -15px 0 0 -12px;
}

.loader_image img {
    width: 36px;
    height: 36px;
}


/*----------------------------------------------------------------------------------
 28. preloader css end
 ----------------------------------------------------------------------------------*/

/*----------------------------------------------------------------------------------
 29. triangle and button shape css start
----------------------------------------------------------------------------------*/

.triangle_btn {
    position: relative;
    border-top: 2px solid #fd644f ;
    border-bottom: 2px solid #fd644f ;
}

.triangle_btn:before {
    content: "";
    position: absolute !important;
    width: 0;
    height: 0;
    left: 0;
    top: 0;
    border-top: 0px solid #fd644f ;
    border-right: 0px solid transparent;
}

.triangle_btn:after {
    content: "";
    position: absolute !important;
    width: 0;
    height: 0;
    right: 0;
    bottom: 0;
    border-bottom: 0px solid #fd644f ;
    border-left: 0px solid transparent;
}

.triangle_btn:hover:before {
    border-top: 23px solid #fd644f ;
    border-right: 23px solid transparent;
}

.triangle_btn:hover:after {
    border-bottom: 23px solid #fd644f ;
    border-left: 23px solid transparent;
}

.triangle_shape {
    border-top: 1px solid #fd644f ;
    border-bottom: 1px solid #fd644f ;
    position: relative;
}

.triangle_shape:before {
    content: "";
    position: absolute !important;
    width: 0;
    height: 0;
    left: 0;
    top: 0;
    border-top: 78px solid #fd644f ;
    border-right: 78px solid transparent;
    z-index: 1;
}

.triangle_shape:after {
    content: "";
    position: absolute !important;
    width: 0;
    height: 0;
    right: 0;
    bottom: 0;
    border-bottom: 78px solid #fd644f ;
    border-left: 78px solid transparent;
    z-index: 1;
}

.triangle_box {
    position: relative;
    border-top: 2px solid #fd644f ;
    border-bottom: 2px solid #fd644f ;
    border-left: 2px solid transparent;
    border-right: 2px solid transparent;
}

.triangle_box:before {
    content: "";
    position: absolute !important;
    width: 0;
    height: 0;
    left: 0;
    top: 0;
    border-top: 15px solid #fd644f ;
    border-right: 15px solid transparent;
}

.triangle_box:after {
    content: "";
    position: absolute !important;
    width: 0;
    height: 0;
    right: 0;
    bottom: 0;
    border-bottom: 15px solid #fd644f ;
    border-left: 15px solid transparent;
}


/*----------------------------------------------------------------------------------
 29. triangle and button shape css end
----------------------------------------------------------------------------------*/


/* Additional CSS */

.px_event_main .owl-dots {
    text-align: center;
    margin: 40px 0 0;
}

.owl-dot span {
    background-color: #fff;
    width: 16px;
    height: 16px;
    display: inline-block;
    margin-right: 10px;
}

.video_crousel .owl-nav {
    text-align: center;
    margin-top: 40px;
}

.video_crousel .owl-nav>* {
    margin: 0 10px;
}

.testimonial_crousel .owl-dots {
    text-align: center;
    margin: 40px 0 0;
}

.slider_caption {
    height: 100%;
    width: 100%;
    max-width: 658px;
    position: absolute;
    right: 20%;
    padding: 20px 50px 0px;
    background: rgba(0, 0, 0, 0.85);
}

/* ==========================================
   Nueva galería Maestra Vida
========================================== */

.home_gallery{
    display:flex !important;
    flex-wrap:wrap;
    justify-content:center;
    align-items:flex-start;
    gap:20px;

    width:100%;
    max-width:1200px;

    margin:60px auto;

    float:none !important;
}

.px_photo_galley.home_gallery{
    float:none !important;
}

.home_gallery .photo_grid{
    float:none !important;
    width:calc(25% - 15px) !important;
}

.home_gallery .gallery_cover{
    width:100%;
}

.home_gallery img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
    display:block;
}

/* ==========================================
   Navegación páginas interiores
========================================== */

.wrapper_navigation.px_interior{
    position: fixed !important;
    top: 0;
    left: 0;
    bottom: auto;
    width: 100%;
    background: rgba(0,0,0,.92);
    z-index: 999;
}

/* ==========================================
   Cabecera Cartelera
========================================== */

.interior_titulo{
    font-size: 64px;
}


/* específica para contenedores de afiche en la sección de eventos */
.px_event_cover .px_thumb_wrapper.event-poster,
.px_thumb_wrapper.event-poster {
  background-color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  box-sizing: border-box;
  border-radius: 6px;
  overflow: hidden;
  height: 500px;
  width: 100%;
}

/* imagen: que llene máximo el contenedor sin recortar ni deformarse.
   usamos width:auto/height:auto con max- para que pequeñas se centren y grandes escalen */
.px_thumb_wrapper.event-poster img {
  display: block;
  margin: 0 auto;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center center;
}

/* Ajuste final para afiches de cualquier proporción dentro de las cards. */
.px_event_cover .px_thumb_wrapper .event-poster,
.px_event_cover .contenedor-afiche .event-poster {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    aspect-ratio: auto;
    object-fit: contain;
    object-position: center;
}