.urbexa-search-wrap{width:100%;max-width:1320px;margin:0 auto;padding:0 16px;text-align:center}
.urbexa-search-title{color:#fff;font-size:44px;font-weight:800;line-height:1.15;margin:0 0 26px;text-shadow:0 3px 12px rgba(0,0,0,.45)}
.urbexa-search-form{width:100%;display:flex;align-items:stretch;justify-content:center;background:#fff;border-radius:7px;overflow:hidden;box-shadow:0 16px 38px rgba(0,0,0,.25)}
.urbexa-search-field{min-height:64px;border:0;border-right:1px solid rgba(0,0,0,.12);background:#fff;color:#1d1d1d;font-size:16px;padding:0 22px;outline:none;flex:1 1 180px}
.urbexa-search-text{flex:2 1 360px}.urbexa-search-button{min-height:64px;border:0;background:#111;color:#fff;font-size:15px;font-weight:800;text-transform:uppercase;padding:0 38px;cursor:pointer;transition:all .25s ease}.urbexa-search-button:hover{background:#C9A84C;color:#111}
.urbexa-results-section{width:100%;max-width:1180px;margin:0 auto;padding:20px 16px}.urbexa-section-title{color:#1d1d1d;font-size:34px;font-weight:800;line-height:1.15;margin:0 0 22px}.urbexa-section-subtitle{color:#60646c;font-size:18px;margin:-12px 0 26px}
.urbexa-property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.urbexa-property-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 16px 36px rgba(0,0,0,.08);transition:all .28s ease}.urbexa-property-card:hover{transform:translateY(-6px);box-shadow:0 22px 46px rgba(0,0,0,.14)}
.urbexa-property-card-link{display:block;color:inherit;text-decoration:none!important}.urbexa-property-image-wrap{width:100%;height:220px;background:#eee;overflow:hidden}.urbexa-property-image{width:100%;height:100%;display:block;object-fit:cover;transition:transform .32s ease}.urbexa-property-card:hover .urbexa-property-image{transform:scale(1.04)}.urbexa-property-image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#e8e8e8,#f6f6f6)}
.urbexa-property-body{padding:26px 24px 24px}.urbexa-property-meta{color:#6b6474;font-size:15px;margin-bottom:14px}.urbexa-property-title{color:#000;font-size:24px;font-weight:800;line-height:1.18;margin:0 0 22px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.urbexa-property-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;color:#111}.urbexa-property-price{font-size:22px;font-weight:800}.urbexa-property-area{font-size:18px;font-weight:500}.urbexa-no-results{background:#fff;border-radius:14px;padding:28px;box-shadow:0 14px 34px rgba(0,0,0,.07);color:#333;font-size:17px}
.elementor-section .urbexa-home-grid-section .urbexa-section-title,.e-con .urbexa-home-grid-section .urbexa-section-title{color:#fff;text-align:center}.elementor-section .urbexa-home-grid-section .urbexa-section-subtitle,.e-con .urbexa-home-grid-section .urbexa-section-subtitle{color:#fff;text-align:center;font-weight:600}
@media(max-width:1024px){.urbexa-property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.urbexa-search-form{flex-wrap:wrap;border-radius:10px}.urbexa-search-field,.urbexa-search-button{flex:1 1 50%;border-bottom:1px solid rgba(0,0,0,.12)}.urbexa-search-button{flex-basis:100%}}
@media(max-width:767px){.urbexa-search-title{font-size:32px}.urbexa-search-form{display:block}.urbexa-search-field,.urbexa-search-button{width:100%;min-height:56px;border-right:0}.urbexa-property-grid{grid-template-columns:1fr;gap:22px}.urbexa-section-title{font-size:28px}.urbexa-property-title{font-size:22px}}

/* ================================
   URBEXA CARD GLASS PREMIUM v1.3
   Tarjeta semitransparente elegante para fondos oscuros o con imagen.
================================ */
.urbexa-property-card{
    background: rgba(255,255,255,.90) !important;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border: 1px solid rgba(255,255,255,.38);
    border-top: 3px solid #C9A84C;
    box-shadow: 0 20px 40px rgba(0,0,0,.18);
}

.urbexa-property-card:hover{
    transform: translateY(-8px);
    background: rgba(255,255,255,.96) !important;
    box-shadow: 0 30px 50px rgba(0,0,0,.25);
}

.urbexa-property-body{
    background: transparent !important;
}

.urbexa-property-title{
    font-size: 22px;
    font-weight: 800;
    line-height: 1.22;
}

.urbexa-property-meta{
    color: #625a68;
}

.urbexa-property-price,
.urbexa-property-area{
    color: #050505;
}

.urbexa-property-image-wrap{
    background: rgba(255,255,255,.30);
}


/* ================================
   URBEXA CARDS v2 - PREMIUM GLASS
================================ */
.urbexa-home-grid-section{
    max-width: 1220px;
}

.urbexa-property-grid{
    align-items: stretch;
}

.urbexa-property-card{
    background: rgba(255,255,255,.82) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255,255,255,.42);
    border-top: 2px solid #C9A84C;
    box-shadow: 0 20px 50px rgba(0,0,0,.25);
    min-height: 520px;
}

.urbexa-property-card:hover{
    transform: translateY(-8px) scale(1.02);
    background: rgba(255,255,255,.93) !important;
    box-shadow: 0 30px 60px rgba(0,0,0,.32);
}

.urbexa-property-card-link{
    height: 100%;
    display: flex;
    flex-direction: column;
}

.urbexa-property-image-wrap{
    height: 210px;
    flex: 0 0 210px;
}

.urbexa-property-body{
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 26px 24px 24px;
}

.urbexa-property-meta{
    position: relative;
    color: #5F5866;
    font-size: 15px;
    margin-bottom: 22px;
    padding-bottom: 14px;
}

.urbexa-property-meta::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 46px;
    height: 2px;
    background: #C9A84C;
    border-radius: 2px;
}

.urbexa-property-title{
    color: #050505;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.22;
    margin-bottom: 24px;
    -webkit-line-clamp: 2;
}

.urbexa-property-footer{
    margin-top: auto;
    padding-top: 10px;
}

.urbexa-property-price{
    color: #C9A84C;
    font-size: 23px;
    font-weight: 900;
}

.urbexa-property-area{
    color: #111;
    font-size: 18px;
    font-weight: 600;
}

@media(max-width:1024px){
    .urbexa-property-card{
        min-height: 500px;
    }
}

@media(max-width:767px){
    .urbexa-property-card{
        min-height: auto;
    }

    .urbexa-property-image-wrap{
        height: 220px;
        flex-basis: 220px;
    }
}


/* ================================
   URBEXA BLOG v2.1
================================ */
.urbexa-blog-section{
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding:70px 16px;
}

.urbexa-blog-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:28px;
}

.urbexa-blog-card{
    background:rgba(255,255,255,.88);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 20px 45px rgba(0,0,0,.14);
    border:1px solid rgba(255,255,255,.38);
    border-top:2px solid #C9A84C;
    transition:all .28s ease;
}

.urbexa-blog-card:hover{
    transform:translateY(-8px);
    background:rgba(255,255,255,.96);
    box-shadow:0 30px 60px rgba(0,0,0,.24);
}

.urbexa-blog-card-link{
    display:block;
    color:inherit;
    text-decoration:none!important;
}

.urbexa-blog-image-wrap{
    width:100%;
    height:210px;
    background:#eee;
    overflow:hidden;
}

.urbexa-blog-image{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .32s ease;
}

.urbexa-blog-card:hover .urbexa-blog-image{
    transform:scale(1.04);
}

.urbexa-blog-image-placeholder{
    width:100%;
    height:100%;
    background:linear-gradient(135deg,#e8e8e8,#f7f7f7);
}

.urbexa-blog-body{
    padding:24px;
}

.urbexa-blog-meta{
    color:#625a68;
    font-size:14px;
    margin-bottom:14px;
}

.urbexa-blog-title{
    color:#050505;
    font-size:22px;
    font-weight:800;
    line-height:1.22;
    margin:0 0 14px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.urbexa-blog-excerpt{
    color:#4d4d4d;
    font-size:15px;
    line-height:1.55;
    margin:0 0 20px;
}

.urbexa-blog-readmore{
    display:inline-block;
    color:#C9A84C;
    font-weight:800;
    font-size:15px;
}

.urbexa-blog-pagination{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-top:42px;
}

.urbexa-blog-pagination .page-numbers{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:42px;
    height:42px;
    padding:0 14px;
    border-radius:999px;
    background:rgba(255,255,255,.88);
    color:#111;
    text-decoration:none!important;
    font-weight:700;
    box-shadow:0 10px 24px rgba(0,0,0,.12);
    transition:all .25s ease;
}

.urbexa-blog-pagination .page-numbers.current,
.urbexa-blog-pagination .page-numbers:hover{
    background:#C9A84C;
    color:#111;
}

@media(max-width:1024px){
    .urbexa-blog-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:767px){
    .urbexa-blog-section{
        padding:50px 16px;
    }

    .urbexa-blog-grid{
        grid-template-columns:1fr;
        gap:22px;
    }

    .urbexa-blog-title{
        font-size:21px;
    }
}


/* ================================
   URBEXA BRAND ALIGNMENT v2.2
   Manual de marca: Navy #0D1B2A · Teal #0E7C7B · Oro #C9A84C · Crema #F5F1EB · Gris #6B7280
================================ */

/* Botón principal: se reemplaza cualquier rosa/fucsia por Teal Urbexa */
.urbexa-search-button{
    background:#0E7C7B !important;
    color:#ffffff !important;
    border-color:#0E7C7B !important;
}

.urbexa-search-button:hover{
    background:#13A8A7 !important;
    color:#ffffff !important;
    border-color:#13A8A7 !important;
}

/* Campos del buscador más alineados al tono formal/cercano */
.urbexa-search-field{
    color:#0D1B2A !important;
}

.urbexa-search-field::placeholder{
    color:#6B7280 !important;
}

/* Cards en Crema Alivio con glass sutil */
.urbexa-property-card,
.urbexa-blog-card{
    background:rgba(245,241,235,.90) !important;
    border:1px solid rgba(245,241,235,.48) !important;
    border-top:2px solid #C9A84C !important;
}

/* Hover con crema más sólida */
.urbexa-property-card:hover,
.urbexa-blog-card:hover{
    background:rgba(245,241,235,.97) !important;
}

/* Texto de marca */
.urbexa-property-title,
.urbexa-blog-title{
    color:#0D1B2A !important;
}

.urbexa-property-meta,
.urbexa-blog-meta,
.urbexa-blog-excerpt{
    color:#6B7280 !important;
}

/* Precio como acento premium Oro Certeza */
.urbexa-property-price,
.urbexa-blog-readmore{
    color:#C9A84C !important;
}

.urbexa-property-area{
    color:#0D1B2A !important;
}

/* Separadores en Teal Urbexa */
.urbexa-property-meta::after{
    background:#0E7C7B !important;
}

/* Paginación alineada a marca */
.urbexa-blog-pagination .page-numbers.current,
.urbexa-blog-pagination .page-numbers:hover{
    background:#0E7C7B !important;
    color:#ffffff !important;
}

.urbexa-blog-pagination .page-numbers{
    background:rgba(245,241,235,.92) !important;
    color:#0D1B2A !important;
}

/* Nota: el manual prohíbe sombras en el logo. Esto solo evita que estilos del plugin afecten imágenes fuera de cards. */
.urbexa-property-card img,
.urbexa-blog-card img{
    filter:none !important;
}

/* ================================
   URBEXA SINGLE PROPERTY v2.3
================================ */
.single-propiedad .urbexa-header{position:relative!important;top:auto!important;left:auto!important;background:#000!important;box-shadow:none!important}
.urbexa-single-property{background:#F5F1EB;color:#0D1B2A}
.urbexa-single-property-hero{padding:72px 20px 100px}
.urbexa-single-property-container{width:100%;max-width:1220px;margin:0 auto}
.urbexa-single-property-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:34px}
.urbexa-single-property-kicker{margin:0 0 10px;color:#0E7C7B;font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.urbexa-single-property-heading h1{margin:0;max-width:900px;color:#0D1B2A;font-size:48px;font-weight:800;line-height:1.12}
.urbexa-single-property-operation{flex:0 0 auto;padding:10px 18px;border-radius:999px;background:#0E7C7B;color:#fff;font-size:14px;font-weight:800;text-transform:uppercase}
.urbexa-single-property-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);gap:36px;align-items:start}
.urbexa-single-property-main{min-width:0}
.urbexa-single-property-image{width:100%;height:540px;overflow:hidden;border-radius:20px;background:#e7e3dc;box-shadow:0 24px 55px rgba(13,27,42,.16)}
.urbexa-single-property-image img{width:100%;height:100%;display:block;object-fit:cover}
.urbexa-single-property-image-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#e7e3dc,#f7f4ef)}
.urbexa-single-property-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0 34px}
.urbexa-single-property-fact{min-height:102px;padding:20px;border-radius:14px;background:rgba(255,255,255,.72);border:1px solid rgba(201,168,76,.30)}
.urbexa-single-property-fact span{display:block;margin-bottom:8px;color:#6B7280;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.urbexa-single-property-fact strong{display:block;color:#0D1B2A;font-size:19px;line-height:1.25}
.urbexa-single-property-content{padding:34px;border-radius:18px;background:#fff;box-shadow:0 18px 42px rgba(13,27,42,.08)}
.urbexa-single-property-content h2{margin:0 0 22px;color:#0D1B2A;font-size:30px;font-weight:800}
.urbexa-single-property-content p,.urbexa-single-property-content li{color:#3f4855;font-size:18px;line-height:1.75}
.urbexa-single-property-form-card{position:sticky;top:24px;padding:34px;border-radius:20px;background:#0D1B2A;color:#fff;box-shadow:0 24px 55px rgba(13,27,42,.24)}
.urbexa-single-property-form-eyebrow{margin:0 0 8px;color:#C9A84C;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.urbexa-single-property-form-card h2{margin:0 0 14px;color:#fff;font-size:30px;font-weight:800;line-height:1.15}
.urbexa-single-property-form-card>p:not(.urbexa-single-property-form-eyebrow){margin:0 0 22px;color:rgba(255,255,255,.78);font-size:15px;line-height:1.55}
.urbexa-single-property-reference{margin:0 0 24px;padding:15px 17px;border-radius:12px;background:rgba(14,124,123,.18);border-left:3px solid #0E7C7B}
.urbexa-single-property-reference span{display:block;color:rgba(255,255,255,.65);font-size:12px;margin-bottom:4px}
.urbexa-single-property-reference strong{color:#fff;font-size:14px;line-height:1.35}
.urbexa-single-property-form-card .wpforms-container{margin:0!important}
.urbexa-single-property-form-card .wpforms-field{padding:7px 0!important}
.urbexa-single-property-form-card .wpforms-field-label{color:#fff!important;font-size:14px!important}
.urbexa-single-property-form-card input[type="text"],.urbexa-single-property-form-card input[type="email"],.urbexa-single-property-form-card input[type="tel"]{width:100%!important;min-height:50px!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:10px!important;background:rgba(255,255,255,.96)!important;color:#0D1B2A!important;padding:12px 14px!important}
.urbexa-single-property-form-card .wpforms-field-checkbox label,.urbexa-single-property-form-card .wpforms-field-gdpr-checkbox label{color:rgba(255,255,255,.82)!important;font-size:12px!important;line-height:1.4!important}
.urbexa-single-property-form-card button[type="submit"]{width:100%!important;min-height:52px!important;border:0!important;border-radius:10px!important;background:#0E7C7B!important;color:#fff!important;font-size:15px!important;font-weight:800!important;text-transform:uppercase;transition:all .25s ease}
.urbexa-single-property-form-card button[type="submit"]:hover{background:#13A8A7!important;transform:translateY(-2px)}
@media(max-width:1024px){.urbexa-single-property-layout{grid-template-columns:1fr}.urbexa-single-property-form-card{position:relative;top:auto}.urbexa-single-property-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.urbexa-single-property-hero{padding:42px 16px 70px}.urbexa-single-property-heading{display:block}.urbexa-single-property-heading h1{font-size:34px}.urbexa-single-property-operation{display:inline-block;margin-top:18px}.urbexa-single-property-image{height:300px;border-radius:15px}.urbexa-single-property-facts{grid-template-columns:1fr 1fr}.urbexa-single-property-content,.urbexa-single-property-form-card{padding:24px}}

/* ================================
   URBEXA PROPERTY GALLERY v3.0
================================ */
.urbexa-property-gallery{width:100%;margin:0 0 22px}.urbexa-gallery-main{position:relative;width:100%;height:540px;overflow:hidden;border-radius:20px;background:#e7e3dc;box-shadow:0 24px 55px rgba(13,27,42,.16)}.urbexa-gallery-main-button{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.urbexa-gallery-main-image{width:100%;height:100%;display:block;object-fit:cover;transition:opacity .2s ease}.urbexa-gallery-expand{position:absolute;right:18px;bottom:18px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:rgba(13,27,42,.82);color:#fff;font-size:23px;box-shadow:0 8px 22px rgba(0,0,0,.25)}.urbexa-gallery-arrow{position:absolute;top:50%;z-index:2;display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-top:-24px;border:0;border-radius:50%;background:rgba(13,27,42,.78);color:#fff;font-size:38px;line-height:1;cursor:pointer;transition:background .2s ease,transform .2s ease}.urbexa-gallery-arrow:hover{background:#0E7C7B;transform:scale(1.05)}.urbexa-gallery-prev{left:18px}.urbexa-gallery-next{right:18px}.urbexa-gallery-thumbs{display:flex;gap:12px;margin-top:14px;padding:2px 2px 8px;overflow-x:auto;scrollbar-width:thin;scroll-snap-type:x proximity}.urbexa-gallery-thumb{flex:0 0 116px;height:82px;padding:0;border:3px solid transparent;border-radius:10px;background:#e7e3dc;overflow:hidden;cursor:pointer;opacity:.72;scroll-snap-align:start;transition:border-color .2s ease,opacity .2s ease,transform .2s ease}.urbexa-gallery-thumb:hover{opacity:1;transform:translateY(-2px)}.urbexa-gallery-thumb.is-active{border-color:#0E7C7B;opacity:1}.urbexa-gallery-thumb img{width:100%;height:100%;display:block;object-fit:cover}.urbexa-gallery-lightbox[hidden]{display:none!important}.urbexa-gallery-lightbox{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:70px 90px;background:rgba(5,12,20,.96)}.urbexa-gallery-lightbox-image{max-width:100%;max-height:calc(100vh - 120px);object-fit:contain;border-radius:8px}.urbexa-gallery-lightbox-close{position:absolute;top:20px;right:28px;width:48px;height:48px;border:0;background:transparent;color:#fff;font-size:46px;line-height:1;cursor:pointer}.urbexa-gallery-lightbox-nav{position:absolute;top:50%;width:56px;height:56px;margin-top:-28px;border:0;border-radius:50%;background:rgba(255,255,255,.13);color:#fff;font-size:44px;line-height:1;cursor:pointer}.urbexa-gallery-lightbox-prev{left:24px}.urbexa-gallery-lightbox-next{right:24px}.urbexa-gallery-counter{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.12);color:#fff;font-size:14px}.urbexa-lightbox-open{overflow:hidden}
@media(max-width:767px){.urbexa-gallery-main{height:300px;border-radius:15px}.urbexa-gallery-arrow{width:40px;height:40px;margin-top:-20px;font-size:32px}.urbexa-gallery-prev{left:10px}.urbexa-gallery-next{right:10px}.urbexa-gallery-expand{right:12px;bottom:12px;width:38px;height:38px}.urbexa-gallery-thumb{flex-basis:88px;height:64px}.urbexa-gallery-lightbox{padding:60px 12px}.urbexa-gallery-lightbox-nav{width:44px;height:44px;font-size:35px;background:rgba(0,0,0,.55)}.urbexa-gallery-lightbox-prev{left:8px}.urbexa-gallery-lightbox-next{right:8px}.urbexa-gallery-lightbox-close{top:12px;right:12px}}


/* URBEXA v3.1 — Galería sin espacios laterales */
.urbexa-property-gallery .urbexa-gallery-main-button{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    overflow:hidden!important;
}
.urbexa-property-gallery .urbexa-gallery-main-image{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:cover!important;
    object-position:center center!important;
}
