/* ==========================================================================
   1. ESTILOS CR脥TICOS BASE (MIGRADO DE PHP & THEME)
   ========================================================================== */
@-ms-viewport{width:device-width}
:focus{outline:0}
* {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
html {font-size: 10px;font-family: Montserrat, sans-serif;height: 100%;margin: 0;scroll-behavior: smooth;}
body {height: 100%;margin: 0;padding: 0;background-color: #f7f7f7;color: #000;font-size: 1.6rem;line-height: 1.6em;font-family: Montserrat, Arial, Helvetica, sans-serif;}  
a {will-change: color;color: #333;text-decoration: none;box-shadow: none}
a img {border: 0;}
img {vertical-align: middle;display: block;max-width: 100%;height: auto}
ul {list-style: none;margin-top: 0;margin-bottom: 10px;}
ul ul {margin-bottom: 0}
nav,section {display: block}
strong {font-weight: 600}
button, input, textarea {font-family: inherit;font-size: inherit;line-height: inherit}
.row {margin-left: 15px!important;margin-right: 15px!important}
.clearfix:after, .clearfix:before, .container:after, .container:before, .nav:after,.nav:before, .row:after,.row:before {display: table; content: " ";}
.clearfix:after, .container:after, .nav:after, .row:after {clear: both;}
.visible-xs {display: none !important;}
.logo {font-weight: 700;color: #007bff;}

h1, h3, h4 {color: #222;font-family: Montserrat, sans-serif; font-weight: 700; margin-top: 0 !important; margin-bottom: 0 !important;line-height: 1.3em }
h1 {font-size: 34px}
h3 {font-size: 24px}
h4 {font-size: 18px}

/* Acelerar renderizado de iconos */
.fa, .fas, .fab, .far {
    font-display: swap;
}

p {font-size: 16px;line-height: 1.6em!important;margin-bottom: 16px;font-weight: 400;margin-top: 0;}
.single-content, p {font-size: 16px;}
    
.right-top-widet {min-height: 40px;}
li#social_widget_top-1.widget-container.social_sidebar {min-width: 161px;min-height: 40px;height:40px;}
    
.full_width_prop {min-height: 3000px;width: 100% !important;}
    
.entry-title{width:100%;float:left;word-break:break-word}
.container{padding:0;width:1200px;min-height:1px;position:relative;z-index:2}
.content_wrapper{width:1200px;margin:0 auto;background-color:#f7f7f7;padding:0;position:relative;min-height:1px;}
.wide{width:100%;background-color:#f7f7f7}
.col-md-12.full_width_prop{width:100%}
.agentpict,.form-control,.wpresidence_button{border-radius:2px}
.agentpict {display: flex;justify-content: center;align-items: center;width: 100%;height: 100%;}
.agent-listing-img-wrapper {display: flex;justify-content: center;align-items: center;}
.wpestate-flex{display:flex}
.wpestate-flex-wrap{flex-wrap:wrap}
.wpestate-align-self-center{align-self:center}
.wpestate-align-items-center{align-items:center}
.wpestate-justify-content-between{justify-content:space-between}
.wpestate-text-end{text-align:right}
input[type=text],textarea{font-size:13px;padding:9px 0 9px 9px;color:#333;border:1px solid #333;background-color:#fff;box-shadow:none;-webkit-appearance:none}
input.form-control:-moz-placeholder,input.form-control::-moz-placeholder,input.form-control::-ms-input-placeholder,input.form-control::-webkit-input-placeholder{color:#5a6b82!important}
input.form-control::-moz-placeholder{opacity:1}
#access{padding:0 10px;height:100%}
#access .menu{height:100%}
#access ul{font-size:13px;list-style:none;margin:0 0 0 -.8125em;padding-left:0;z-index:99999;text-align:right}
#access ul ul{float:left;margin:0;position:absolute;left:0;visibility:hidden;opacity:0;top:130px;margin-left:3px;padding:25px 0;width:285px;background-color:#fff;-webkit-box-shadow:3px 1px 20px 0 rgba(0,110,225,.08);box-shadow:3px 1px 20px 0 rgba(0,110,225,.08);line-height:0}
#access li{display:inline-block;text-align:left;position:relative;-webkit-backface-visibility:hidden}
#access a{display:block;text-decoration:none;font-size:15px;font-weight:700;padding-left:15px;padding-right:15px;color:#222;-webkit-backface-visibility:hidden}
#access ul ul a{padding-top:23px}
.menu>li{height:100%;line-height:90px}
.menu-main-menu-container{height:100%}
#access .sub-menu li>a{-webkit-transform:matrix(1,0,0,1,0,20);-ms-transform:matrix(1,0,0,1,0,20);transform:matrix(1,0,0,1,0,20)}
.hover_type_4 #access ul ul{margin-left:0}
#access ul ul li{width:100%;padding:0 30px}
#access ul ul a{color:#222;font-size:14px;font-weight:600;height:auto;line-height:1.4em;padding:13px;text-transform:none}
#access ul ul li:last-child>a{border-bottom:none}
.master_header{background-color:#fff;width:100%;position:fixed;top:0;z-index:100;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.header_wrapper{width:100%;margin:0 auto;height:90px;position:relative;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.header_wrapper_inside{height:100%;margin:0 auto}
.full_width_header .header_wrapper_inside{width:100%;padding:0 45px;max-width:100%}
.logo img{max-height:54px;max-width:160px}
.top_bar{height:40px;line-height:40px;width:100%;font-size:13px;color:#b6b6b6;backface-visibility:hidden;-webkit-backface-visibility:hidden;margin:0 auto}
.top_bar_wrapper{background-color:#001a33;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;position:Relative;width:100%}
.master_header.wide{width:100%}
.top_bar_wrapper.transparent_border_topbar{border-bottom:1px solid #ccc}
.top_bar_wrapper.transparent_border_topbar .right-top-widet .widget-container{border-left:1px solid #ccc;padding:0 15px}
.top_bar_wrapper.transparent_border_topbar .right-top-widet .widget-container:last-of-type{border-right:1px solid #ccc}
.top_bar_wrapper.transparent_border_topbar .left-top-widet .widget-container:last-of-type{border-right:1px solid #ccc}
.top_bar_wrapper.transparent_border_topbar .left-top-widet .widget-container:first-of-type{border-left:1px solid #ccc}
.top_bar_wrapper.transparent_border_topbar .left-top-widet .widget-container:last-of-type{border-left:1px solid #ccc}
.top_bar_wrapper.transparent_border_topbar .left-top-widet .widget-container.social_sidebar{border-right:0}
.transparent_border_topbar .top_bar .social_sidebar_internal a{border-right:1px solid #ccc;padding:0 13px!important}
.transparent_border_topbar .top_bar .social_sidebar_internal i{margin-right:0;text-align:center}
.top_bar_wrapper.transparent_border_topbar,.top_bar_wrapper.transparent_border_topbar .left-top-widet .widget-container:first-of-type,.top_bar_wrapper.transparent_border_topbar .left-top-widet .widget-container:last-of-type,.top_bar_wrapper.transparent_border_topbar .right-top-widet .widget-container,.top_bar_wrapper.transparent_border_topbar .right-top-widet .widget-container:last-of-type,.transparent_border_topbar .top_bar .social_sidebar_internal a{border-color:rgba(206,206,206,.3)}
.full_width_header .top_bar{width:100%;padding:0 55px}
.top_bar a{color:#b6b6b6;font-size:14px;padding:11px 0}
.left-top-widet li,.right-top-widet li{float:left;display:inline}
.top_bar .widget-container{display:inline;margin-bottom:0}
.top_bar i{width:13px;margin-right:5px;margin-left:0;font-size:13px}
.top_bar .social_sidebar_internal a{padding:0 5px;box-sizing:border-box;-moz-box-sizing:border-box;vertical-align:0}
.header_media{background-color:#fdfdfd;position:relative;z-index:3;width:100%;display:inline-block;padding-top:90px}
.has_top_bar .header_media{padding-top:131px}
.user_menu_wrapper{position:relative}
.user_menu{color:#0073e1;-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden}
.header_phone svg{color:#8a959e;height:21px;fill:#0073e1;vertical-align:middle}
.header_phone{font-size:17px;font-weight:700;color:#222;margin-right:20px;padding-top:4px}
.no_user_submit .header_phone{margin-right:10px}
.mobile_header{display:none;}


#menu-main-menu{margin-left:14px}
.form-control{display:block;width:100%;height:40px;padding:9px 12px;font-size:13px;line-height:1.428571429;color:#5a6b82;vertical-align:middle;background-color:#fff;background-image:none;border:1px solid #eee;border-radius:3px;-webkit-box-shadow:none;box-shadow:none;margin-bottom:15px}
textarea.form-control{height:auto;font-size:13px}
.form-control::-moz-placeholder,.form-control::-webkit-input-placeholder{color:#5a6b82}
.price_label{font-size:16px;margin-top:2px}
.status-wrapper{float:right;margin-right:15px;min-height:1px}
.gallery_wrapper .status-wrapper,.property_header_gallery_wrapper .status-wrapper{position:absolute;top:15px;left:15px}
.agent_contanct_form_sidebar h4{margin-top:4px;margin-bottom:3px}
.agent_position{margin:0 0 10px;line-height:1.65em}
.agent_detail{margin:0 0 2px;padding-left:0;font-size:13px}
.agent_detail i{color:#777;margin-right:10px;font-size:12px;background:#f2f2f2;position:relative;width:27px;height:27px;line-height:27px;display:inline-block;text-align:center;border-radius:50%;margin-bottom:5px}
.single-content{padding:0;margin-bottom:15px;font-size:14px;line-height:1.65em;float:left;width:100%}
.single-content p a{color:#0073e1}
.single-content p{margin-bottom:16px;word-break:break-word}
.nav-prev-wrapper{position:fixed;height:110px;top:50%;width:250px;background:#fff;color:#222;margin-top:-55px;text-decoration:none;z-index:200;left:-210px;border-top-right-radius:4px;border-bottom-right-radius:4px;padding:0 15px;display:table;box-shadow:0 0 27px 0 rgba(0,0,0,.045)}
.nav-next-wrapper i,.nav-prev-wrapper i{display:inline;float:left;font-size:20px;line-height:22px;top:50%;margin-top:-11px}
.nav-next-wrapper i{margin-left:5px;margin-right:5px;position:absolute;left:12px}
.nav-prev-wrapper i{position:absolute;right:16px}
.nav-next-wrapper{position:fixed;height:110px;top:50%;width:250px;background:#fff;color:#222;margin-top:-55px;text-decoration:none;z-index:200;right:-210px;margin-left:-40px;border-top-left-radius:4px;border-bottom-left-radius:4px;padding:0 15px;display:table;box-shadow:0 0 27px 0 rgba(0,0,0,.045)}
.navigational_links a{color:#222;text-decoration:none;-ms-word-wrap:break-word;word-wrap:break-word}
.nav-next,.nav-prev{display:table-cell;vertical-align:middle}
.nav-prev{text-align:right}
.nav-prev a{display:block;padding-right:25px;line-height:20px;max-width:250px;float:right;text-align:right;font-weight:700}
.nav-next a{margin-left:24px;line-height:20px;padding-left:1PX;display:inline;float:left;max-width:250px;font-weight:700}
.entry-prop{display:inline;float:left;width:auto;max-width:75%;font-size:34px;line-height:1.3;letter-spacing:-1px;margin-top: 0px !important;margin-bottom: 0px !important;}
.slider-property-status{position:relative;z-index:50;float:left;margin-left:10px;margin-top:15px;padding:2px 20px;font-size:13px;color:#fdfdfd;-webkit-box-shadow:3px 1px 20px 0 rgba(0,110,225,.08);box-shadow:3px 1px 20px 0 rgba(0,110,225,.08);font-weight:600;background-color:rgba(0,115,225,.85);line-height:1.65em}
.property-panel{margin-bottom:30px;width:100%;min-height:1px;display:inline-block;line-height:1.65em}
.elementor-widget .property-panel{margin-bottom:0}
.single-overview-section{background-color:#fff;padding:12px}
.elementor-widget .single-overview-section{margin-bottom:0}
.wpestate_agent_details_wrapper{padding:30px;background-color:#fff;float:left;width:100%;position:relative;z-index:90;min-height: 397px}
.wpestate_agent_details_wrapper{padding-bottom:0;float:left}
.wpestate_estate_property_design_agent .wpestate_agent_details_wrapper{background:#fff;display:inline-block;padding:30px 30px 10px}
.wpestate_estate_property_design_agent{display:inline-block;min-height:1px;width:100%}
.wpestate_property_description h4, .wpestate_property_description h2{color:#222;}
.agentpic-wrapper{padding-left:0}
.property_categs{float:left;width:100%;font-size:14px;margin-bottom:0;margin-top:10px}
.property_categs_elementor{margin-top:0;min-height:1px;float:none}
.property_categs i{margin-right:3px;font-size:12px}
.overview_element{list-style:none;margin:10px 0 0;float:left;width:150px;min-height:80px;}
.overview_element:first-of-type{width:150px}
.overview_element li{text-align:center!important;line-height:20px;font-weight:400;color:#222;font-size:12px;}
.price_area{color:#0073e1;font-size:30px;padding:0;float:right;font-weight:700;letter-spacing:-1px;min-height:1px;line-height:1.1;position:relative;margin-top:-5px}
.elementor-widget-container_price_area{float:none;display:inline-block;min-height:1px}
.property_header_gallery_wrapper .slider-property-status{top:15px}
.agent_details h3{margin-bottom:5px;font-size:24px}
.agent_unit_social_single{bottom:20px;left:0;right:0;background-color:#fff;width:72%;padding:10px;z-index:10;position:relative;text-align:center;box-shadow:0 3px 14px 0 rgba(7,152,255,.09);margin:0 auto;border-radius:2px;font-size:16px}
.agent_unit_social_single a{color:#777;margin-right:7px;margin-left:7px}
.agent_details{min-height:200px;padding-right:0}
.agentpict{width:100%;min-height:186px;}
.agent_contanct_form{margin:0;float:left;padding:30px;background-color:#fff;z-index:99;position:relative}
.agent_contanct_form{margin-bottom:30px;float:left;position:relative;width:100%;z-index:auto}
.agent_contanct_form_sidebar #show_contact{padding:0 15px;margin:0 -13px;font-size:16px;width:auto;float:none;margin-bottom:15px;display:none}
.contact_form_flex_wrapper{display:flex;flex-direction:row;gap:10px}
.lightbox_property_sidebar .contact_form_flex_wrapper{flex-direction:column;margin:15px 0 0;gap:0}
#agent_submit{margin-bottom:0;margin-right:15px;min-width:170px}
.agent-listing-img-wrapper{width:100%;position:relative}
.agent_contanct_form .realtor_call,.agent_contanct_form .realtor_whatsapp{margin-right:15px}
.wpresidence_button.realtor_call,.wpresidence_button.realtor_whatsapp{display:inline-block;float:left}
.wpresidence_button.agent_submit_class{display:inline-block;float:left;margin-right:15px}
.agent_contanct_form_sidebar .agent_call_no{display:none}
.top_bar .xoxo{margin:0}
.widget-container{margin-bottom:30px}
.single-estate_property .wpestate_agent_details_wrapper{box-shadow:none!important;}
.top_bar .social_sidebar{margin-bottom:0}
.top_bar_wrapper.transparent_border_topbar .top_bar .social_sidebar{padding:0}
.textwidget{font-size:13px;line-height:1.6em}
.top_bar .textwidget{margin-right:0;margin-left:15px;line-height:40px}
.transparent_border_topbar .textwidget{margin-left:0}
.alert-message{color:#fff;font-size:12px;line-height:22px;background-color:#f44336;margin-bottom:13px;padding:1px 10px;margin-top:13px;width:100%;border-radius:2px}
.alert-message:empty{padding:0;margin-bottom:0;margin-top:0}
.wpresidence_button{text-shadow:none;margin-bottom:15px;border-radius:0;text-transform:capitalize;padding:8px 34px;border:1px solid;line-height:2;border-color:#0073e1;color:#fff;background-color:#0073e1;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,transparent),color-stop(50%,#0073e1));background-image:linear-gradient(to right,transparent 50%,#0073e1 50%);background-size:200% 100%;background-position:right bottom;display:inline-block;font-size:15px;font-weight:700;text-decoration:none}
.wpresidence_button_inverse{color:#0073e1;background-color:#fff;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#0073e1),color-stop(50%,#fff));background-image:linear-gradient(to right,#0073e1 50%,#fff 50%)}
.website-wrapper{width:100%;padding:.1px;overflow:auto}
.single-estate_property .website-wrapper{overflow:unset}
#all_wrapper{webkit-overflow-scrolling:auto}
.wpestate_property_description{background-color:#fff;padding:30px;display:inline-block;width:100%;min-height:1px;line-height:1.6em}
.wpestate_estate_property_design_agent .agentpic-wrapper{max-width:313px;padding-left:0;min-width:250px;padding:0}
.elementor-widget .wpestate_estate_property_design_agent .agentpic-wrapper{width:100%;max-width:100%}
.wpestate_estate_property_design_agent.property_desing_agent_one_col .agent_detail{padding-left:0!important;margin-left:0!important}

.form-contacto-propiedad {min-height: 580px;}
.agent_details_box {min-height: 405px;}
    
#owl-demo{max-width:1100px;position:relative;width:100%;margin:0 auto}
#show_contact{float:left}
.agent_contanct_form .alert-box{clear:both;width:100%;display:flex}
.custom_details_container{padding:0;float:left;margin:15px 0 0;width:100%}
.elementor-widget-container .wpestate_property_widget .custom_details_container{display:none}
.fa,.fas{font-family:"Font Awesome 5 Free"!important}
.owl-carousel{display:none;width:100%;position:relative;z-index:1}
li.social_sidebar{list-style-type:none}
.overview_element img{height:30px!important;width: 30px !important;margin-bottom:6px;display: inline-block !important;vertical-align: middle !important}
.logo img{max-width:280px}
.lazyloaded:not(.elementor-motion-effects-element-type-background),body.e-lazyload .lazyloaded{--e-bg-lazyload-loaded:var(--e-bg-lazyload)}
.lazyload{opacity:0}
.agent_contanct_form input[type=submit],.slider-property-status{background-color:#282b69}
.header_phone svg{fill:#282b69}
.wpresidence_button {
    background-color: #282b69;
    border-color: #282b69;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, transparent), color-stop(50%, #282b69));
    background-image: linear-gradient(to right, transparent 50%, #282b69 50%);
}

.lighbox-image-close{background-color:#282b69!important}

.wpresidence_button_inverse{color:#282b69;background-color:#fff;background-image:-webkit-gradient(linear,left top,right top,color-stop(50%,#282b69),color-stop(50%,#fff));background-image:linear-gradient(to right,#282b69 50%,#fff 50%)}
.price_area,.user_menu{color:#282b69}
.master_header{background-color:#fff}
#access ul ul{background-color:#fff}
#access ul ul{border:0px}
#access ul ul a{border-bottom:1px solid #282b69}
#access a,#access ul ul a{color:#282b69}
.top_bar,.top_bar a{color:#fff}
.mobile_header{background-color:#fff}
.nav-next-wrapper,.nav-prev-wrapper{display:none!important}
.avances_button{text-shadow:none;margin-bottom:15px;text-transform:capitalize;padding:8px 34px;border:1px solid;line-height:2;border-color:#0073e1;color:#fff!important;background-color:#282b69;background-size:200% 100%;background-position:right bottom;display:inline-block;font-size:15px;font-weight:700;text-decoration:none;border-radius:3px}
#access a,#access ul ul a,#user_menu_u{font-family:Montserrat}
.elementor *,.elementor :after,.elementor :before{box-sizing:border-box}
.elementor a{box-shadow:none;text-decoration:none}
.elementor img{height:auto;max-width:100%;border:none;border-radius:0;box-shadow:none}
.elementor-element{--flex-direction:initial;--flex-wrap:initial;--justify-content:initial;--align-items:initial;--align-content:initial;--gap:initial;--flex-basis:initial;--flex-grow:initial;--flex-shrink:initial;--order:initial;--align-self:initial;flex-basis:var(--flex-basis);flex-grow:var(--flex-grow);flex-shrink:var(--flex-shrink);order:var(--order);align-self:var(--align-self)}
.elementor {min-height: 1px;display: block;width: 100%;box-sizing: border-box}
:root{--page-title-display:block}
.attachment-property_listings {aspect-ratio: 1.6006;width: 100%;height: auto;display: block;}
.elementor-section {position: relative; min-height: 1px;display: block;width: 100%;box-sizing: border-box}
    
.elementor-section .elementor-container {display: flex;margin-right: auto;margin-left: auto;position: relative;}
#principal {display: flex;flex-direction: row;min-height: 328px;justify-content: flex-start;align-items: stretch;width: 100%;box-sizing: border-box;margin-top: 10px!important;gap:0px;padding: 10px 0 !important}
#primero-pro {display: flex;flex-direction: column;justify-content: center;align-items: center;width: 50%;flex: 0 0 50%;min-height: 328px;padding: 0!important;box-sizing: border-box;}
#imagen-pro {--align-self: flex-start;}
#segundo-pri {display: flex;flex-direction: column;justify-content: center;width: 50%;flex: 0 0 50%;min-height: 328px;padding: 10px 10px 10px 10px!important;box-sizing: border-box; background-color: #fff;}
#titulo-cont {display: flex;flex-direction: column;min-height: 90px;width: 100%;box-sizing: border-box;padding: 0}
#precio-cont {display: flex;flex-direction: column;min-height: 36px;width: 100%;box-sizing: border-box;padding: 0}
#direccion-cont {display: flex;flex-direction: column;min-height: 34px;width: 100%;box-sizing: border-box;padding: 0}
.elementor-widget-wrap {min-height: 1px;position: relative;width: 100%;flex-wrap: wrap;align-content: flex-start;display:flex;}
.elementor:not(.elementor-bc-flex-widget) .elementor-widget-wrap {display: flex;}
.elementor-widget-wrap > .elementor-element {width: 100%;}
.elementor-widget {position: relative;}
.elementor-column {position: relative;min-height: 1px;display: flex;}
.elementor-column-gap-default > .elementor-column > .elementor-element-populated {padding: 0px!important;}
#titulo-pri{text-align:left;font-size:34px;line-height:1.2em;margin-top: 0px !important;margin-bottom: 0px !important;}
#precio-pri, #direccion-pri {text-align: left;}
#columna-descripcion {min-height: 500px;width: 100%;box-sizing: border-box;display: block;}


.custom-btn i {
    margin-right: 8px !important; /* Antes estaba en 0 o muy poco */
    font-size: 1.1em; /* Opcional: un pelín más grandes para que luzcan */
    vertical-align: middle; /* Alineación perfecta con el texto */
    position: relative; 
    top: -1px; /* Ajuste óptico fino */
}

/* Font Awesome Definitions */
@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:swap;src:url('https://depreventa.mx/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-brands-400.woff2') format("woff2"),url('https://depreventa.mx/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-brands-400.woff') format("woff")}
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:swap;src:url('https://depreventa.mx/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-regular-400.woff2') format("woff2"),url('https://depreventa.mx/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-regular-400.woff') format("woff")}
@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:swap;src:url('https://depreventa.mx/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-solid-900.woff2') format("woff2"),url('https://depreventa.mx/wp-content/plugins/elementor/assets/lib/font-awesome/webfonts/fa-solid-900.woff') format("woff")}

/* Bootstrap & Responsive Column Base Styles */
.col-md-10,.col-md-12,.col-md-2,.col-md-3,.col-md-9,.col-xs-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}
.panel-title{margin-top:0;margin-bottom:10px!important;font-size:18px!important;color:inherit}
#seccion-ubicacion, #seccion-galeria, #seccion-amenidades, #formulario{ scroll-margin-top: 120px; }
#mega-menu-wrap-max_mega_menu_1 .mega-menu-toggle .mega-toggle-blocks-left{padding-left:10px;}


/* Contenedor General */
.tab-navigation-container {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 100%; 
    background: #fff;
    padding: 10px 0;
}
/* Estilo Base WPresidence */
.wpestate-elementor-nav-tabs {
    position: relative;
    width: 100%;
    overflow: hidden;
    border: 0;
}
/* 脕rea Scrollable */
.wpestate-elementor-nav-tabs .nav-tabs {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto;
    width: 100%; 
    padding-bottom: 5px;
    padding-left: 0;
    margin-bottom: 30px;
    border-bottom: none !important;
    gap: 10px;
    background: transparent;
    scroll-behavior: smooth;
    -ms-overflow-style: none;  
    scrollbar-width: none;     
}
.wpestate-elementor-nav-tabs .nav-tabs::-webkit-scrollbar { display: none; }

/* Items (Li) */
#tab_prpg .nav-tabs > li,
.wpestate-elementor-nav-tabs .nav-tabs li {
    float: none !important;
    flex: 0 0 auto;
    display: block;
    margin-bottom: 0 !important;
    border-right: 0;
    list-style: none;
}
/* Bot贸n Normal */
#tab_prpg .nav-tabs > li > a,
.wpestate-elementor-nav-tabs .nav-tabs li a {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-color: #ffffff;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    box-shadow: 0 2px 5px rgba(0,0,0,0.04);
    margin-right: 0 !important;
    padding: 15px 15px !important;
    min-width: 120px;
    color: #64748b !important;
    font-weight: 600;
    font-size: 14px;
    white-space: nowrap;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
/* Iconos */
#tab_prpg .nav-tabs > li > a i,
#tab_prpg .nav-tabs > li > a svg {
    margin-right: 0 !important;
    margin-bottom: 8px;
    font-size: 22px;
    color: #94a3b8;
    transition: all 0.3s ease;
}
/* Hover */
#tab_prpg .nav-tabs > li > a:hover {
    background-color: #f8fafc !important;
    border-color: #cbd5e1 !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 15px rgba(0,0,0,0.05);
    color: #334155 !important;
}
#tab_prpg .nav-tabs > li > a:hover i,
#tab_prpg .nav-tabs > li > a:hover svg { color: #3b82f6; }
/* Activo */
#tab_prpg .nav-tabs > li.active > a, 
#tab_prpg .nav-tabs > li.active > a:hover, 
#tab_prpg .nav-tabs > li.active > a:focus,
.wpestate-elementor-nav-tabs .nav-tabs li.active a {
    background-color: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    color: #1d4ed8 !important;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.15);
    transform: translateY(0);
}
#tab_prpg .nav-tabs > li.active > a i,
#tab_prpg .nav-tabs > li.active > a svg { fill: #1d4ed8 !important; color: #1d4ed8 !important; }
/* Contenido */
#tab_prpg .tab-pane, 
#tab_prpg.wpestate_elementor_tabs .tab-pane { padding: 20px; }
/* Flechas */
.tab-arrow {
    background: #fff; border: 1px solid #eee; color: #007bff;
    width: 40px; height: 40px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    z-index: 10; flex-shrink: 0; user-select: none;
}
.tab-arrow:active { background: #f0f0f0; }
.arrow-prev { margin-right: 5px; margin-left: 5px;}
.arrow-next { margin-left: 5px; margin-right: 5px;}
.arrow { border: solid #007bff; border-width: 0 3px 3px 0; display: inline-block; padding: 3px; }
.right { transform: rotate(-45deg); -webkit-transform: rotate(-45deg); margin-right: 2px; }
.left { transform: rotate(135deg); -webkit-transform: rotate(135deg); margin-left: 2px; }

/* ==========================================================================
   AJUSTE DE FLECHAS PARA DESKTOP (PC)
   ========================================================================== */

/* 1. Habilitar flechas en Desktop y mejorarlas */
@media (min-width: 769px) {
    .tab-arrow {
        display: flex !important; /* ¡Que aparezcan! */
        width: 35px;              /* Un poco más discretas que en móvil */
        height: 35px;
        background-color: #fff;
        border: 1px solid #ddd;
        transition: all 0.2s ease;
    }

    .tab-arrow:hover {
        background-color: #007bff;
        border-color: #007bff;
        color: #fff;
        transform: scale(1.1); /* Efecto pop al pasar mouse */
    }

    /* Cambiar el color de la flecha interna al hacer hover */
    .tab-arrow:hover .arrow {
        border-color: #fff;
    }

    /* 2. Evitar que se vaya "hasta la orilla" */
    .tab-navigation-container {
        /* Centramos el bloque de tabs si es muy ancho */
        margin: 0 auto; 
        /* Opcional: Si quieres que tenga un ancho máximo en pantalla gigante */
        /* max-width: 1200px; */ 
        padding: 10px 5px; /* Un poco de aire a los lados */
    }
}



/* ==========================================================================
   4. BOTONES FLOTANTES (STICKY MOBILE)
   ========================================================================== */
.prop-sticky-btns {
    position: fixed; bottom: 0; left: 0; width: 100%;
    display: flex !important; justify-content: space-evenly; align-items: center;
    padding: 15px 5px !important; background-color: #fff;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1); z-index: 9999;
}
.prop-sticky-btns a {
    flex: 1; text-align: center; padding: 12px 0 !important; margin: 0 5px;
    border-radius: 12px; text-decoration: none; font-weight: 700;
    font-size: 16px !important; display: flex; flex-direction: column;
    align-items: center; justify-content: center; border: 1px solid rgba(0,0,0,0.08);
    transition: transform 0.2s;
}
.prop-sticky-btns a:active { transform: scale(0.96); }
.prop-sticky-btns a i, .prop-sticky-btns a span { 
    font-size: 22px !important; margin-bottom: 5px; display: block;
}  
.btncall { background-color: #007bff; color: #444 !important; }
.btnmsg { background-color: #f8f9fa; color: #444 !important; }
.btnwp { background-color: #25d366; color: #fff !important; }
@media (min-width: 769px){ .prop-sticky-btns{display:none!important} }

/* ==========================================================================
   5. FORMULARIO GRAVITY FORMS
   ========================================================================== */
.gform_wrapper {
    /*padding: 20px; border: 1px solid #eee; border-radius: 15px;*/
    background-color: #ffffff; box-shadow: 0 10px 30px rgba(0,0,0,0.03);
}
.gform_heading .gform_title {
    font-size: 22px; font-weight: 800; color: #1a1a1a;
    text-align: center; margin-bottom: 25px;
}
.gform_body input:not([type=submit]), .gform_body textarea {
    padding: 15px; border-radius: 8px; border: 1px solid #e1e1e1;
    background-color: #fcfcfc; font-size: 16px;
}
.gform_footer .gform_button {
    width: 100%; padding: 16px; border-radius: 8px; font-size: 18px;
    font-weight: bold; background-color: #28a745; color: white; border: none; cursor: pointer;
}


/* ==========================================================================
   7. MEDIA QUERIES GENERALES (ORIGINALES)
   ========================================================================== */

@media only screen and (max-width:500px){
    #agent_submit,.wpresidence_button{width:100%;text-align:center}
    .wpresidence_button.realtor_call{margin-top:10px}
    .has_top_bar .has_header_type1 .header_media{padding-top:105px}
}
@media only screen and (max-width:570px){
    #agent_submit{margin-bottom:13px;width:100%}
    .contact_form_flex_wrapper{flex-direction:column;margin:15px 0 0;gap:0}
}
@media only screen and (max-width:640px){
    .overview_element li{text-align:center!important;}
    .overview_element:first-of-type{width:100%}
    .overview_element{margin:10px 0 0 0!important;float:left;width:50%!important}
    .price_area{float:left;padding:0;font-size:22px}
    .entry-title.entry-prop{width:100%;font-size:34px}
    .price_area{margin-top:0}
    .entry-prop{width:100%;max-width:100%}
    .property_categs{margin-top:10px;line-height:1.4em}
}
@media (max-width:767px){
    html{font-size:10px}
    .logo{font-size:2rem}
    .visible-xs{display:block!important}
    #principal {display: flex;flex-direction: column;width: 100%;min-height: 250px;box-sizing: border-box;padding: 0;}
    #primero-pro {width: 100%;flex: 0 0 100%;display: flex;flex-direction: column;min-height: 250px;box-sizing: border-box;padding: 0;}
    #segundo-pri {width: 100%;flex: 0 0 100%;display: flex;flex-direction: column;justify-content: center;min-height: 250px;box-sizing: border-box;padding: 20px;}
    #titulo-cont {min-height: 90px;padding: 0;}
    #precio-cont {min-height: 30px;}
    #direccion-cont {min-height: 30px}
    #columna-descripcion {min-height: 500px;}
    #seccion-ubicacion, #seccion-galeria, #seccion-amenidades, #formulario{ scroll-margin-top: 120px; }
    /* Mobile Hero */
    .custom-buttons-row-top { flex-direction: column; }
    .custom-prop-title { font-size: 32px !important; }
    .custom-price-val { font-size: 32px; }
}
@media only screen and (max-width:770px){
    .single-estate_property .wpresidence_button.realtor_call,.single-estate_property .wpresidence_button.realtor_whatsapp{display:none}
}
@media (min-width:768px){
    .elementor-column.elementor-col-100{width:100%}
    #columna-izquierda{width:66%}
    #columna-derecha{width:34%;padding-left:10px;}
}
@media only screen and (max-width:992px){
    .top_bar,.top_bar .textwidget{line-height:30px}
    .entry-prop{font-size:34px}
    .price_area{margin-top:18px}
    .property_categs{margin-top:0}
    .row.custom_details_container{margin:0}
    .container{margin-bottom:0!important}
    .widget-container{float:left;clear:both;width:100%}
    .navigational_links{display:none}
    .left-top-widet,.right-top-widet{float:none;margin:0 auto;display:inline-block;width:100%;left:0;right:0;text-align:center}
    .top_bar .social_sidebar_internal a{margin-left:0;float:none}
    .logo{width:100%;padding:0;text-align:center}
    .logo img{max-width:300px;margin:0 auto}
    .user_menu{display:block;float:none;text-align:center;margin-bottom:20px;margin-top:0;margin:0 auto}
    .user_menu.user_loged{margin-top:0!important;margin-right:45px;padding-left:0;padding-right:0;text-align:left;padding:0 0 9px!important;width:70px}
    .user_loged{padding-top:0}
    .top_bar_wrapper{border:none}
    .top_bar,.wide .top_bar{width:100%!important;padding:15px 15px 5px;text-align:center;margin-top:0;float:left;height:auto}
    .top_bar_wrapper{float:left;margin-bottom:0}
    .left-top-widet li{margin:0 auto;float:none;display:inline-block!important}
    .agent_details{padding-left:0;margin-top:20px}
    .agent_contanct_form{margin-left:0;margin-right:0}
    .agent_unit_social_single,.agentpic-wrapper{padding-left:0;padding-right:0;width:100%;display:inline-block}
    .has_top_bar .has_header_type1 .header_media{padding-top:0}
    .col-md-12 .agentpic-wrapper{max-width:280px}
}
@media only screen and (max-width:1023px){
    .top_bar .textwidget{margin-right:0;margin-bottom:0;margin-left:0}
    .mobile_header{display:block}
    .mobile_header_media_sticky_yes{margin-top:70px}
    .full_width_prop{width:100%!important}
    .full_width_prop{width:100%;left:0}
    #access{display:none}
    .header_wrapper,.top_bar_wrapper.topbar_show_mobile_no{display:none}
    .has_header_type1 .header_media,.has_top_bar .has_header_type1 .header_media{padding-top:0!important;float:left;width:100%;height:100%;min-height:100%}
    .master_header{position:relative;float:left;top:auto;height:auto}
    .website-wrapper{overflow-x:hidden}
    .logo{display:none}
    .user_menu{margin:0 auto!important;margin-top:15px;display:block;float:none;text-align:center;margin-bottom:20px}
    .container{float:left}
    .wpresidence_button{margin-bottom:0}
    .wpresidence_button.realtor_call,.wpresidence_button.realtor_whatsapp{margin-bottom:10px}
    .mobile_header{ background-color:#fff;height: 70px; width: 100%; float: none !important; display: flex !important; position: fixed; justify-content: center; align-items: center; top: 0; left: 0; z-index: 999; }
    .mobile_header_sticky_yes{position:fixed;top:0}
    #mega-menu-wrap-max_mega_menu_1{ order: 1!important; flex-grow: 0!important; flex-shrink: 0!important; position: absolute!important; left: 0!important; z-index: 1000!important; width: 62px!important; height: 70px!important; }
    .mobile-logo { order: unset; flex-shrink: 0; flex-grow: 0; display: flex; justify-content: center; align-items: center; width: auto; height: 100%; box-sizing: border-box; padding: 0 !important; margin: 0 !important; }
    .mobile-logo img { position: static; top: auto !important; left: auto; right: auto; transform: none; -webkit-transform: none; -ms-transform: none; margin: 0 auto; max-height: 45px; width: auto; max-width: 242px; display: block; height: auto; }
}
@media (max-width:1024px) and (min-width:768px){
    #columna-izquierda{width:100%}
    #columna-derecha{width:100%}
    .elementor-column.elementor-col-50{width:50%}
    .elementor-column.elementor-col-100{width:100%}
}
@media only screen and (max-width:1024px){
    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1>li.mega-menu-item{display:list-item;margin:0;clear:both;border:0}
    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1>li.mega-menu-item>a.mega-menu-link{border-radius:0;border:0;margin:0;line-height:50px;height:50px;padding:0 10px;background:0 0;text-align:left;color:#313072;font-size:16px}
    #mega-menu-wrap-max_mega_menu_1:after{content:"";display:table;clear:both}
    #mega-menu-wrap-max_mega_menu_1 .mega-menu-toggle{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex}
    #mega-menu-wrap-max_mega_menu_1 .mega-menu-toggle{position:relative}
    #mega-menu-wrap-max_mega_menu_1 .mega-menu-toggle+#mega-menu-max_mega_menu_1{background:#fff;padding:0;display:none}
    #mega-menu-wrap-max_mega_menu_1 .mega-menu-toggle+#mega-menu-max_mega_menu_1{position:fixed;display:block;width:300px;max-width:100%;height:100vh;max-height:100vh;top:0;box-sizing:border-box;overflow-y:auto;overflow-x:hidden;z-index:9999999999;overscroll-behavior:contain;visibility:hidden}
    #mega-menu-wrap-max_mega_menu_1 .mega-menu-toggle+#mega-menu-max_mega_menu_1{left:-300px}
    .top_bar_wrapper.transparent_border_topbar .right-top-widet .widget-container:last-of-type{border-right:0 solid #ccc}
    .top_bar_wrapper.transparent_border_topbar{border-bottom:0 solid #ccc}
    .top_bar_wrapper.transparent_border_topbar .left-top-widet .widget-container:last-of-type{border-left:0 solid #ccc}
    .top_bar_wrapper.transparent_border_topbar .right-top-widet .widget-container{border-left:0 solid #ccc}
    .top_bar_wrapper.transparent_border_topbar .left-top-widet .widget-container:first-of-type,.top_bar_wrapper.transparent_border_topbar .left-top-widet .widget-container:last-of-type{border:none}
    .transparent_border_topbar .top_bar .social_sidebar_internal a{border-right:0 solid #ccc;padding:0 7px!important}
    .header_media{padding-top:0}
    .single-estate_property .content_wrapper{padding:0}
    .row{margin-left:0!important;margin-right:0!important}
    .lightbox_property_slider{max-width:100%;width:100%}
    .lightbox_property_wrapper_level2{height:auto}
}
@media only screen and (max-width:1024px) and (min-width:992px){
    #access{max-width:600px;float:right}
}
@media only screen and (max-width:1200px){
    .full_width_header .top_bar,.header_wrapper_inside,.top_bar{padding:0 30px}
    .header_wrapper_inside{width:100%;max-width:100%}
    .container,.content_wrapper{width:100%!important;box-sizing:border-box;-moz-box-sizing:border-box}
    .top_bar,.wide .top_bar{width:100%}
    .master_header{width:100%}
}
@media (max-width: 1200px) {
    .container, .content_wrapper { width: 100%!important; padding-left: 0; padding-right: 0; }
}
@media only screen and (max-width:1366px){
    .lightbox_property_sidebar{display:none}
    .lightbox_property_slider{max-width:100%;width:100%}
    .lighbox-image-close{top:20px}
}
@media only screen and (max-width:1500px) and (min-width:1024px){
    .lightbox_property_wrapper_level2{max-width:86%;height:auto}
}
@media only screen and (min-width:992px){
    .col-md-10,.col-md-12,.col-md-2,.col-md-3,.col-md-9{float:left}
    .col-md-12{width:100%}
    .col-md-10{width:83.33333333%}
    .col-md-9{width:75%}
    .col-md-3{width:25%}
    .col-md-2{width:16.66666667%}
}
@media only screen and (min-width:1025px){
    #mega-menu-wrap-max_mega_menu_1{background:#222}
    #mega-menu-wrap-max_mega_menu_1 #mega-menu-max_mega_menu_1 li#mega-menu-item-40868{margin-bottom:90px}
}
@media only screen and (max-width: 700px) {
    #tab_prpg.wpestate_elementor_tabs li {
        width: auto!important;
    }
    #tab_prpg.wpestate_elementor_tabs .nav-tabs>li {
        border-bottom: 0 !important;
    }
}


/* ==========================================================================
   HERO DESIGN v2.1 (CORREGIDO - SOLO PLANTILLA MALIA/PRUEBAS)
   ========================================================================== */

#hero-malia-dev {
    display: grid;
    /* Mantenemos tu proporción 0.8fr (45%) y 1fr (55%) */
    grid-template-columns: 0.8fr 1fr; 
    gap: 0;
    width: 100%;
    max-width: 100%;
    margin-top: 10px !important;
    background-color: #fff;
    align-items: stretch;
    /* CRÍTICO PARA CLS: Reservamos altura mínima en Desktop para evitar colapso */
    min-height: 320px; 
}

/* 2. COLUMNA FOTO (ESTABILIDAD DE IMAGEN) */
#col-foto-malia {
    position: relative;
    width: 100%;
    height: 100%;
    /* Mantenemos aspect-ratio para reservar el hueco antes de que cargue la foto */
    aspect-ratio: 3 / 2;
    overflow: hidden;
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
}

/* Forzar llenado de contenedores intermedios de Elementor */
#col-foto-malia .elementor-widget,
#col-foto-malia .elementor-widget-container,
#col-foto-malia .elementor-image {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

#col-foto-malia img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover; 
    display: block;
    /* Quitamos transición en carga inicial para evitar parpadeos, se puede activar con JS luego si quieres */
    /* transition: transform 0.5s ease; */ 
}

/* 3. COLUMNA INFO (ESTABILIDAD DE TEXTO) */
#col-info-malia {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0px 30px !important; /* Un poco más de aire */
    box-sizing: border-box;
    width: 100%;
    /* CRÍTICO: Altura mínima para que el texto no empuje el contenido hacia abajo */
    min-height: 320px; 
}

/* --- RESPONSIVE MÓVIL (CORREGIDO) --- */
@media (max-width: 900px) {
    #hero-malia-dev {
        display: flex !important; /* Cambiamos a Flex en móvil */
        flex-direction: column;
        width: 100%;
        min-height: auto; /* En móvil la altura es automática */
    }
    
    #col-foto-malia {
        width: 100% !important;
        aspect-ratio: 3 / 2; 
        height: auto !important;
        min-height: 250px; /* Evita colapso a 0px */
    }

    #col-info-malia {
        width: 100% !important;
        padding: 20px 20px !important;
        min-height: auto;
    }
}




/* --- ESTILOS INTERNOS (BOTONES CORREGIDOS) --- */


/* ==========================================================================
   2. ESTILOS NUEVOS (HERO DESIGN / MALIA)
   ========================================================================== */
.custom-property-details-wrapper { color: #333; width: 100% !important;
    max-width: 100% !important; }
.custom-tags-wrapper { display: flex; gap: 10px; margin-bottom: 5px; }
.prop-tag { background-color: #E8F0FE; color: #424242; padding: 6px 14px; border-radius: 20px; font-size: 13px; font-weight: 600; display: inline-block; }
.prop-tag.outline { background-color: transparent; border: 1px solid #9E9E9E; color: #666; }
.custom-title-wrapper { margin-bottom: 5px; }
.custom-prop-title { font-size: 38px !important; font-weight: 800 !important; color: #000; margin: 10px 0 0 0 !important; text-transform: uppercase; line-height: 1.1; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.custom-prop-subtitle { font-size: 16px; color: #555; margin: 0 0 10px 0 !important; font-weight: 400; }
.custom-price-wrapper { margin-bottom: 18px; display: flex; align-items: baseline; gap: 8px; }
.price_label { font-size: 16px; margin-top: 2px; font-weight: 400; }
.price-prefix { font-size: 18px; color: #777; font-weight: 400; }
.custom-price-val { font-size: 38px; font-weight: 800; color: #000; }
.price-suffix { font-size: 16px; color: #999; text-transform: uppercase; }
.custom-buttons-wrapper { width: 100%; }


.custom-btn { 
    display: inline-flex; 
    align-items: center; 
    justify-content: center; 
    padding: 12px 5px !important; /* Menos padding lateral */
    border-radius: 8px; 
    font-weight: 600; 
    font-size: 14px; /* Un pelín más chico para asegurar espacio */
    text-decoration: none !important; 
    transition: all 0.3s ease; 
    border: none; 
    cursor: pointer; 
    text-align: center; 
    line-height: 1.2; 
    white-space: nowrap;
    flex: 1 1 0% !important; /* Esto los obliga a dividirse el ancho exacto */
    min-width: 0 !important;   /* Esto permite que se estrechen */
}



.btn-gallery:hover { background-color: #0056b3; }
.btn-amenities:hover, .btn-location:hover { background-color: #d4d4d4; color: #333 !important; }
.custom-whatsapp-row { width: 100%; }
.btn-whatsapp:hover { background-color: #1ebc57; color: white !important; }


/* ==========================================================================
   BOTONES DE ACCIÓN (SOLUCIÓN HÍBRIDA)
   ========================================================================== */

/* 1. ESCRITORIO (Pantallas Grandes): Usamos FLEX para que se vean Horizontales */
@media (min-width: 769px) {
    .property-action-buttons {
        /*display: flex !important;     Activamos Flex solo en PC * /
        flex-wrap: wrap !important;  /* Seguridad por si la pantalla es mediana * /
        gap: 10px;                   /* Espacio entre botones * /
        align-items: center;*/
        width: 100%;
        display: block !important;
    }
    
    .button-action-property {
        width: auto !important;      /* El botón se ajusta al texto */
        margin-bottom: 0;
    }
}

/* 2. MÓVIL (Pantallas Chicas): QUITAMOS FLEX (Lo que tú hiciste y funcionó) */
@media (max-width: 768px) {
    .property-action-buttons {
        display: block !important;   /* AQUÍ ESTÁ EL TRUCO: Comportamiento nativo */
        width: 100% !important;
        text-align: center;          /* Centramos los botones */
    }

    .button-action-property {
        display: inline-block !important; /* Para que respeten margenes */
        width: 100% !important;           /* Botón ancho completo para fácil clic */
        margin-bottom: 10px !important;   /* Espacio hacia abajo para que no se peguen */
        box-sizing: border-box;           /* Para que el padding no rompa el ancho */
    }
}

.button-action-property:hover, .button-action-property:focus {background-color: #f0f0f0; color: #333; border-color: #333; }


/* Wrapper de Botones */
.custom-buttons-row-top {
    display: flex !important;
    flex-wrap: nowrap !important; 
    gap: 8px;
    margin: 15px 0;
    width: 100%;
}



/* Estilos visuales (Malia) */
.btn-gallery {
    background-color: #0069D9;
    color: #fff !important;
}
.btn-amenities, .btn-location {
    background-color: #f7f7f7;
    color: #444 !important;
    border: 1px solid #e5e5e5;
}
.btn-whatsapp {
    background-color: #25d366 !important;
    color: #fff !important;
    width: 100%;
    padding: 14px;
    font-size: 16px;
    border-radius: 8px;
    text-align: center;
    display: flex;
}

/* --- RESPONSIVE MÓVIL (CORREGIDO) ---  */
@media (max-width: 900px) {
    #hero-malia-dev {
        display: flex !important; 
        flex-direction: column;
        width: 100%;
    }
    
   
    
    #col-foto-malia {
        width: 100% !important;
        /* En móvil mantenemos 3:2 o podemos usar 16:9 si prefieres menos altura */
        aspect-ratio: 3 / 2; 
        height: auto !important;
    }

    #col-info-malia {
        width: 100% !important;
        padding: 10px 20px !important; /* Padding seguro para móviles */
    }

    /* Títulos más pequeños en móvil */
    .custom-prop-title { font-size: 28px !important; }
    .custom-price-val { font-size: 26px !important; }

    /* BOTONES MÓVIL: Full Width para evitar desbordes */
    .custom-buttons-row-top {
        flex-direction: column; /* Uno debajo del otro en móvil */
        gap: 8px;
    }
    .custom-btn {
        width: 100% !important;
        margin: 0 !important;
        flex: none !important;
    }
}

@media only screen and (max-width: 700px) {
    .wpestate_elementor_tabs .tab-content {
        float: none !important;   /* 'none' es más seguro que 'initial' para floats */
        width: 100% !important;   /* Aseguramos que ocupe todo */
        display: block !important;
    }
}



