/* ===== vh-hero-redesign-css ===== */

/* VH Hero Redesign v1.0.1 — Opción A full-width */
.hero .hero-content { grid-template-columns: 1fr !important; }
.hero .hero-left { max-width: 62% !important; }
.vh-hero-accent { color: #75D1F2; }
.vh-hero-rule {
    display: inline-block;
    width: 36px;
    height: 2px;
    background: #75D1F2;
    vertical-align: middle;
    margin-right: 10px;
}
.hero-eyebrow { letter-spacing: .1em; font-size: .75rem; font-weight: 600; }
.vh-hero-ctas {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 32px;
}
.vh-cta-primary {
    background: #0575E0;
    color: #fff !important;
    padding: 16px 36px;
    border-radius: 8px;
    font-weight: 700;
    text-decoration: none;
    font-size: 1.1rem;
    letter-spacing: .01em;
    box-shadow: 0 4px 18px rgba(5,117,224,.35);
    transition: background .2s, box-shadow .2s, transform .15s;
    display: inline-block;
}
.vh-cta-primary:hover {
    background: #0460c0;
    color: #fff !important;
    box-shadow: 0 6px 24px rgba(5,117,224,.45);
    transform: translateY(-2px);
}
@media (max-width: 767px) {
    .hero .hero-left { max-width: 100% !important; }
    .vh-hero-ctas { flex-direction: column; }
    .vh-cta-primary { text-align: center; }
}

/* ===== vh-clientify-lazy-css ===== */

/* CLS reservations v1.0.2: PSI midio CLS 0.119 en .hero — subir generosamente */
.hero-form-card { min-height: 640px; }
.clientify-embed-hero { min-height: 460px; display: block; }
/* Reservar tambien la altura del hero left (h1 + sub + cta) para que no se mueva al cargar fonts */
.hero-left { min-height: 360px; }
/* Placeholder skeleton */
.vh-form-placeholder { padding: .5rem 0; }
.vh-form-placeholder .vh-ph-row { height: 44px; background: #f0f4f8; border-radius: 8px; margin-bottom: 12px; animation: vh-ph-pulse 1.4s ease-in-out infinite; }
.vh-form-placeholder .vh-ph-btn { height: 48px; background: #c5d9ed; border-radius: 8px; margin-top: 16px; animation: vh-ph-pulse 1.4s ease-in-out infinite; }
@keyframes vh-ph-pulse { 0%,100%{opacity:1} 50%{opacity:.55} }
@media (max-width: 768px) {
    .hero-form-card { min-height: 580px; }
    .clientify-embed-hero { min-height: 440px; }
    .hero-left { min-height: 320px; }
}

/* ===== vh-skip-link-css ===== */

.skip-link{position:absolute;top:-100%;left:1rem;background:#0575E0;color:#fff;padding:.5rem 1rem;border-radius:0 0 8px 8px;text-decoration:none;font-family:Poppins,Arial,sans-serif;font-weight:600;font-size:.92rem;z-index:10000;transition:top .2s ease;line-height:1.2}
.skip-link:focus,.skip-link:focus-visible{top:0;outline:2px solid #fff;outline-offset:2px;color:#fff}
.skip-link.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link.screen-reader-text:focus{clip:auto;width:auto;height:auto;top:0;left:1rem;background:#0575E0;color:#fff;padding:.5rem 1rem;border-radius:0 0 8px 8px;font-family:Poppins,Arial,sans-serif;z-index:10000}

/* ===== joinchat-button-style-inline-css ===== */

.wp-block-joinchat-button{align-items:center;display:flex;flex-flow:row nowrap}.wp-block-joinchat-button.is-vertical{flex-direction:column}.wp-block-joinchat-button.is-vertical.is-content-justification-left{align-items:flex-start}.wp-block-joinchat-button.is-vertical.is-content-justification-center{align-items:center}.wp-block-joinchat-button.is-vertical.is-content-justification-right{align-items:flex-end}.wp-block-joinchat-button:not(.is-vertical).is-content-justification-left{justify-content:flex-start}.wp-block-joinchat-button:not(.is-vertical).is-content-justification-center{justify-content:center}.wp-block-joinchat-button:not(.is-vertical).is-content-justification-right{justify-content:flex-end}.wp-block-joinchat-button:not(.is-vertical).is-content-justification-space-between{justify-content:space-between}.wp-block-joinchat-button figure{align-items:center;display:flex;flex-direction:column;flex-shrink:0;margin:0;padding:0}.wp-block-joinchat-button figcaption{font:normal normal 400 .6em/2em var(--wp--preset--font-family--system-font,sans-serif);margin:0;padding:0}.wp-block-joinchat-button .joinchat-button__qr{background-color:#fff;box-sizing:content-box;display:block;height:200px;overflow:hidden;padding:10px;width:200px}.wp-block-joinchat-button .joinchat-button__qr canvas,.wp-block-joinchat-button .joinchat-button__qr img{display:block;margin:auto}.wp-block-joinchat-button .wp-block-buttons{flex:1 1 auto;margin:0;max-width:100%;min-width:0;width:100%}.wp-block-joinchat-button .wp-block-button.wp-block-button__width-25{min-width:25%;width:calc(25% - var(--wp--style--block-gap, .5em)*.75)}.wp-block-joinchat-button .wp-block-button.wp-block-button__width-50{min-width:50%;width:calc(50% - var(--wp--style--block-gap, .5em)*.5)}.wp-block-joinchat-button .wp-block-button.wp-block-button__width-75{min-width:75%;width:calc(75% - var(--wp--style--block-gap, .5em)*.25)}.wp-block-joinchat-button .wp-block-button.wp-block-button__width-100{min-width:100%;width:100%}.wp-block-joinchat-button .joinchat-button__link,.wp-block-joinchat-button .wp-block-button__link{align-items:center;display:inline-flex;flex-flow:row nowrap;justify-content:center;width:100%}.wp-block-joinchat-button .joinchat-button__link:before,.wp-block-joinchat-button .wp-block-button__link:before{background:transparent var(--joinchat-ico) no-repeat center;background-size:100%;content:"";display:block;height:1.5em;margin:-.75em .75em -.75em 0;width:1.5em}.wp-block-joinchat-button .joinchat-button__link{width:auto}.wp-block-joinchat-button:has(.joinchat-button__link){border:none!important;display:flex;flex-direction:column}@media (orientation:landscape)and (height >= 481px),(orientation:portrait)and (width >= 481px){.wp-block-joinchat-button.joinchat-button--qr-only .wp-block-buttons{display:none}}@media (orientation:landscape)and (height <= 480px),(width <= 480px){.wp-block-joinchat-button figure{display:none}}

/*# sourceURL=https://vivenziahome.com/wp-content/plugins/creame-whatsapp-me/gutenberg/build/style-index.css */

/* ===== vh-home-cleanup-css ===== */

/* === Home: ocultar seccion Casos de exito === */
body.home section.casos-section { display: none !important; }

/* === Sitewide: quitar telefono del header === */
.nav-tel,
.mobile-nav-tel,
.cta-final-tel { display: none !important; }
header .nav-menu li a.nav-tel,
header a.nav-tel { display: none !important; }

/* === /obra-nueva/: hide cards Naranjos+Alameda === */
html body.page-id-34 .promo-card[href*="los-naranjos"],
html body.page-id-34 .promo-card[href*="/alameda"],
html body.page-id-34 .promo-card[href*="alameda/"],
html body.page-id-34 .on-grid > a[href*="los-naranjos"],
html body.page-id-34 .on-grid > a[href*="alameda"] {
    display: none !important;
    visibility: hidden !important;
}
html body[class].page-id-34 .on-listado,
body.page-id-34 .on-listado {
    display: block !important;
    width: 100% !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
}
html body[class].page-id-34 .on-listado .on-grid,
body.page-id-34 .on-listado .on-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 1.5rem !important;
    max-width: 1100px !important;
    margin: 0 auto !important;
    align-items: stretch !important;
    width: 100% !important;
}
body.page-id-34 .on-listado .on-grid > .promo-card:not([href*="los-naranjos"]):not([href*="alameda"]),
body.page-id-34 .on-listado .on-grid > a.promo-card:not([href*="los-naranjos"]):not([href*="alameda"]) {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}
body.page-id-34 .on-listado .promo-img-wrap {
    aspect-ratio: 16/10 !important;
    width: 100% !important;
    overflow: hidden !important;
}
body.page-id-34 .vh-on-bs70.on-listado.vh-bs70-listado { display: none !important; }
body.page-id-34 .on-listado .on-grid > .promo-card-bs70 {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}
body.page-id-34 .on-listado .on-grid > .promo-card-bs70 .promo-img-wrap {
    aspect-ratio: 16/10 !important;
    width: 100% !important;
    overflow: hidden !important;
    flex-shrink: 0 !important;
}
body.page-id-34 .on-listado .on-grid > .promo-card-bs70 .promo-img-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

/* === Footer tel links blancos sitewide === */
html body[class] .footer-oficina-tel a,
html body[class] .footer-oficina-tel a:link,
html body[class] .footer-oficina-tel a:visited,
html body[class] .footer-oficina-tel a:hover,
html body[class] .footer-oficina-tel a:active {
    color: #FFFFFF !important;
    text-decoration: none !important;
}

/* === Home: buscador === */
body .buscador-tab.active,
body.home .buscador-tab.active,
body .buscador-tabs .buscador-tab.active {
    background: #0575E0 !important;
    color: #fff !important;
    border-bottom-color: #0575E0 !important;
    box-shadow: 0 2px 8px rgba(7,117,224,.25) !important;
}
body .buscador-tab.active:hover,
body.home .buscador-tab.active:hover { background: #0461b6 !important; }
body .buscador-tab:not(.active),
body.home .buscador-tab:not(.active),
body .buscador-tabs .buscador-tab:not(.active) {
    background: #fff !important;
    color: #0575E0 !important;
    border: 1px solid rgba(7,117,224,.20) !important;
    box-shadow: 0 1px 4px rgba(7,117,224,.08) !important;
}
body .buscador-tab:not(.active):hover,
body.home .buscador-tab:not(.active):hover {
    background: #f4f8fc !important;
    color: #0461b6 !important;
}

/* === Home: ocultar "Seleccion de esta semana" === */
.vh-hide-section { display: none !important; }

/* === Home: BS70 izquierda, Huertas derecha === */
body.home .carousel-track {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 1.5rem !important;
}
@media (max-width: 860px) {
    body.home .carousel-track { grid-template-columns: 1fr !important; }
}
body.home .carousel-track .obra-card-link-wrap[href*="bs70"] { order: 1 !important; }
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] { order: 2 !important; }

/* ============================================================
   v1.17.0 — CARDS REDESIGN (BS70 + Huertas J34)
   Estructura editorial compartida, paletas distintas.
   ============================================================ */

/* === Card wrapper comun === */
body.home .carousel-track .obra-card-link-wrap {
    border-radius: 14px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(7,17,34,.08) !important;
    display: flex !important;
    flex-direction: column !important;
    position: relative !important;
    text-decoration: none !important;
    color: inherit !important;
    transition: transform .25s, box-shadow .25s !important;
}
body.home .carousel-track .obra-card-link-wrap:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 16px 40px rgba(7,17,34,.12) !important;
}
body.home .carousel-track .obra-card-link-wrap > article.obra-card {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    background: transparent !important;
}

/* === Image wrap 16/9 (ambas cards igual altura) === */
body.home .carousel-track .obra-card-link-wrap .obra-card-img-wrap,
body.home .carousel-track .obra-card-link-wrap > article > .vh-card-img-wrap {
    position: relative !important;
    aspect-ratio: 16/9 !important;
    width: 100% !important;
    overflow: hidden !important;
    display: block !important;
}
body.home .carousel-track .obra-card-link-wrap > article > img.obra-card-img,
body.home .carousel-track .obra-card-link-wrap .obra-card-img-wrap img,
body.home .carousel-track .obra-card-link-wrap .vh-card-img-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}
/* BS70: anclar imagen al top (oculta máximo del inferior) */
body.home .carousel-track .obra-card-link-wrap[href*="bs70"] .obra-card-img-wrap img,
body.home .carousel-track .obra-card-link-wrap[href*="bs70"] .vh-card-img-wrap img {
    object-position: 50% 0% !important;
}
/* BS70: degradado overlay que enmascara el artefacto de render en la zona inferior */
body.home .carousel-track .obra-card-link-wrap[href*="bs70"] .vh-card-img-wrap::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 65% !important;
    background: linear-gradient(to top, rgba(22,18,28,.95) 0%, rgba(22,18,28,.65) 30%, rgba(22,18,28,.2) 65%, transparent 100%) !important;
    z-index: 1 !important;
    pointer-events: none !important;
}

/* === Badge top-left === */
body.home .carousel-track .obra-card-link-wrap .obra-badge {
    position: absolute !important;
    top: 1.1rem !important;
    left: 1.1rem !important;
    font-family: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace !important;
    font-size: .68rem !important;
    font-weight: 500 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    padding: .5rem .85rem !important;
    border-radius: 4px !important;
    z-index: 2 !important;
    line-height: 1 !important;
    box-shadow: 0 2px 6px rgba(0,0,0,.08) !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="bs70"] .obra-badge {
    background: oklch(0.965 .012 75) !important;
    color: oklch(.235 .008 60) !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] .obra-badge {
    background: oklch(.975 .006 235) !important;
    color: oklch(.24 .05 250) !important;
}

/* === Watermark (firma) bottom-right de la imagen === */
body.home .carousel-track .vh-card-watermark {
    position: absolute !important;
    bottom: .9rem !important;
    right: 1.1rem !important;
    font-family: 'Instrument Serif', Georgia, serif !important;
    font-style: italic !important;
    font-size: 1.4rem !important;
    line-height: 1 !important;
    color: rgba(255,255,255,.82) !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.5) !important;
    pointer-events: none !important;
    z-index: 2 !important;
    letter-spacing: -.01em !important;
}
body.home .carousel-track .vh-card-watermark .num {
    font-style: italic !important;
}

/* === Sold out ribbon (solo Huertas) === */
body.home .carousel-track .vh-sold-out-ribbon {
    position: absolute !important;
    top: 22px !important;
    right: -52px !important;
    transform: rotate(45deg) !important;
    background: #B91C1C !important;
    color: #fff !important;
    padding: .42rem 3.5rem !important;
    font-family: 'JetBrains Mono', ui-monospace, monospace !important;
    font-size: .64rem !important;
    font-weight: 500 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    box-shadow: 0 4px 10px rgba(0,0,0,.18) !important;
    pointer-events: none !important;
    z-index: 3 !important;
    line-height: 1 !important;
}

/* === Body card (compartido) === */
body.home .carousel-track .obra-card-link-wrap .obra-card-body,
body.home .carousel-track .obra-card-link-wrap .vh-card-body {
    padding: 1.85rem 1.85rem 1.65rem !important;
    font-family: 'Manrope', system-ui, sans-serif !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    margin: 0 !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="bs70"] .obra-card-body,
body.home .carousel-track .obra-card-link-wrap[href*="bs70"] .vh-card-body {
    background: oklch(0.965 .012 75) !important;
    color: oklch(.235 .008 60) !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] .obra-card-body,
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] .vh-card-body {
    background: oklch(.975 .006 235) !important;
    color: oklch(.24 .05 250) !important;
}

/* === Eyebrow mono === */
body.home .carousel-track .vh-card-eyebrow {
    font-family: 'JetBrains Mono', ui-monospace, monospace !important;
    font-size: .68rem !important;
    font-weight: 500 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: rgba(60,70,90,.65) !important;
    margin: 0 0 1.1rem 0 !important;
    line-height: 1.2 !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] .vh-card-eyebrow {
    color: rgba(36,46,90,.55) !important;
}

/* === Titulo serif con em italic === */
body.home .carousel-track .vh-card-title {
    font-family: 'Instrument Serif', Georgia, serif !important;
    font-weight: 400 !important;
    font-size: clamp(2rem, 3.2vw, 2.7rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -.012em !important;
    margin: 0 0 1.1rem 0 !important;
    color: inherit !important;
}
body.home .carousel-track .vh-card-title em {
    font-style: italic !important;
    display: block !important;
    margin-top: .1rem !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="bs70"] .vh-card-title em {
    color: oklch(.55 .14 65) !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] .vh-card-title em {
    color: #0575E0 !important;
}

/* === Filete acento === */
body.home .carousel-track .vh-card-rule {
    width: 32px !important;
    height: 2px !important;
    margin: 0 0 1.3rem 0 !important;
    border: 0 !important;
    border-radius: 2px !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="bs70"] .vh-card-rule {
    background: oklch(.55 .14 65) !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] .vh-card-rule {
    background: #0575E0 !important;
}

/* === Grid 3 datos con divisores === */
body.home .carousel-track .vh-card-stats {
    display: grid !important;
    grid-template-columns: auto auto 1fr !important;
    gap: 0 !important;
    padding: 0 0 1.4rem 0 !important;
    border-bottom: 1px solid rgba(60,70,90,.13) !important;
    margin-bottom: 1.4rem !important;
}
body.home .carousel-track .vh-card-stat {
    padding: 0 1.15rem !important;
    border-left: 1px solid rgba(60,70,90,.18) !important;
}
body.home .carousel-track .vh-card-stat:first-child {
    padding-left: 0 !important;
    border-left: 0 !important;
    padding-right: 1.15rem !important;
}
body.home .carousel-track .vh-card-stat-num {
    font-family: 'Instrument Serif', Georgia, serif !important;
    font-weight: 400 !important;
    font-size: 1.85rem !important;
    line-height: 1 !important;
    display: block !important;
    margin: 0 0 .35rem 0 !important;
    color: inherit !important;
}
body.home .carousel-track .vh-card-stat-text {
    font-family: 'Instrument Serif', Georgia, serif !important;
    font-weight: 400 !important;
    font-size: 1.45rem !important;
    line-height: 1 !important;
    display: block !important;
    margin: 0 0 .35rem 0 !important;
    color: inherit !important;
}
body.home .carousel-track .vh-card-stat-label {
    font-family: 'JetBrains Mono', ui-monospace, monospace !important;
    font-size: .6rem !important;
    font-weight: 500 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: rgba(60,70,90,.65) !important;
    line-height: 1 !important;
    display: block !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] .vh-card-stat-label {
    color: rgba(36,46,90,.55) !important;
}

/* === Footer card === */
body.home .carousel-track .vh-card-footer {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 1rem !important;
    margin-top: auto !important;
}
body.home .carousel-track .vh-card-foot-info {
    display: flex !important;
    flex-direction: column !important;
    gap: .35rem !important;
}
body.home .carousel-track .vh-card-foot-label {
    font-family: 'JetBrains Mono', ui-monospace, monospace !important;
    font-size: .6rem !important;
    font-weight: 500 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: rgba(60,70,90,.65) !important;
    line-height: 1 !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] .vh-card-foot-label {
    color: rgba(36,46,90,.55) !important;
}
body.home .carousel-track .vh-card-foot-value {
    font-family: 'Instrument Serif', Georgia, serif !important;
    font-weight: 400 !important;
    font-size: 1.55rem !important;
    line-height: 1.1 !important;
    color: inherit !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] .vh-card-foot-value {
    color: #0575E0 !important;
}

/* === CTA tipo boton === */
body.home .carousel-track .vh-card-cta-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: .5rem !important;
    font-family: 'Manrope', system-ui, sans-serif !important;
    font-weight: 600 !important;
    font-size: .85rem !important;
    padding: .8rem 1.3rem !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    transition: transform .15s, box-shadow .15s, background .15s !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    border: 0 !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="bs70"] .vh-card-cta-btn {
    background: oklch(.235 .008 60) !important;
    color: #fff !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="bs70"]:hover .vh-card-cta-btn {
    background: oklch(.30 .008 60) !important;
    box-shadow: 0 6px 16px rgba(35,30,20,.25) !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] .vh-card-cta-btn {
    background: #0575E0 !important;
    color: #fff !important;
}
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"]:hover .vh-card-cta-btn {
    background: #0461b6 !important;
    box-shadow: 0 6px 16px rgba(7,117,224,.30) !important;
}

/* === Ocultar contenido viejo de la card nativa de Huertas (vh-card-body-new lo reemplaza) === */
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] > article.obra-card[data-vh-redesigned="1"] > .obra-card-body:not(.vh-card-body),
body.home .carousel-track .obra-card-link-wrap[href*="huertas-j34"] > article.obra-card[data-vh-redesigned="1"] > .obra-card-body.obra-card-body-old {
    display: none !important;
}

/* === Mobile tweaks === */
@media (max-width: 640px) {
    body.home .carousel-track .vh-card-title { font-size: 1.75rem !important; }
    body.home .carousel-track .vh-card-stat-num { font-size: 1.55rem !important; }
    body.home .carousel-track .vh-card-stat { padding: 0 .75rem !important; }
    body.home .carousel-track .vh-card-stat:first-child { padding-right: .75rem !important; }
    body.home .carousel-track .vh-card-footer { flex-direction: column !important; align-items: flex-start !important; }
    body.home .carousel-track .vh-card-cta-btn { width: 100% !important; justify-content: center !important; }
}


/* === OSM Static Map (v1.18.0) sitewide — reemplaza iframe Google Maps === */
.vh-map-static {
    position: relative;
    min-height: 220px;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #DCE8F8;
    background: #F4F8FD;
    box-sizing: border-box;
}
.vh-map-tiles {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    height: 100%;
}
.vh-map-tiles img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(.92) contrast(.96);
}
.vh-map-static .vh-map-pin {
    position: absolute;
    font-size: 2rem;
    line-height: 1;
    transform: translate(-50%, -100%);
    filter: drop-shadow(0 2px 4px rgba(0,0,0,.5));
    z-index: 3;
    pointer-events: none;
}
.vh-map-static .vh-map-label {
    position: absolute;
    top: 0; left: 0; right: 0;
    padding: .65rem 1rem;
    background: linear-gradient(to bottom, rgba(255,255,255,.96), rgba(255,255,255,.78) 70%, transparent);
    color: #1F2937;
    font-size: .875rem;
    font-weight: 500;
    margin: 0;
    line-height: 1.4;
    z-index: 2;
}
.vh-map-static a.vh-map-cta {
    position: absolute;
    bottom: 14px; right: 14px;
    padding: .55rem 1.1rem;
    background: #fff;
    color: #0575E0 !important;
    border-radius: 9999px;
    font-size: .8125rem;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 2px 10px rgba(0,0,0,.18);
    z-index: 3;
    transition: background .15s, color .15s;
}
.vh-map-static a.vh-map-cta:hover { background: #0575E0; color: #fff !important; box-shadow: 0 4px 14px rgba(5,117,224,.35); }
.vh-map-static a.vh-map-attrib {
    position: absolute;
    bottom: 6px; left: 6px;
    font-size: .625rem;
    color: #4B5563;
    background: rgba(255,255,255,.85);
    padding: 2px 6px;
    border-radius: 3px;
    text-decoration: none;
    z-index: 3;
    line-height: 1;
}
.vh-map-static a.vh-map-attrib:hover { background: #fff; color: #0575E0; }

/* === Contacto hero subtitle (page-id-38) sitewide rule === */
body.page-id-38 section.hero p { color: rgba(255,255,255,.92) !important; }



/* ===== vh-home-fixes-css ===== */
.buscador-tabs{display:flex;gap:4px;margin-bottom:1.5rem}.buscador-tab{position:relative;z-index:1}.buscador-tab.active{background:#fff !important;color:#0575E0 !important;border-bottom:2px solid #0575E0 !important;box-shadow:0 2px 8px rgba(7,117,224,0.15) !important;border-top-left-radius:6px !important;border-top-right-radius:6px !important;z-index:2}.mercado-distritos{margin-top:2.5rem !important;padding-top:1.5rem;border-top:1px solid rgba(7,117,224,0.10);position:relative}.mercado-distritos::before{content:"— O explora por barrio";display:block;font-family:"Poppins",sans-serif;font-size:.78rem;color:#5a7088;text-transform:uppercase;letter-spacing:.06em;margin-bottom:1rem;font-weight:600}.dropdown-arrow{font-size:.85rem !important;margin-left:5px !important;opacity:1 !important;font-weight:700 !important}.footer-cif{font-size:.78rem;opacity:.75;letter-spacing:.02em}.oficina-map{width:100%;aspect-ratio:16/10;border:0;border-radius:6px;margin:.5rem 0;box-shadow:0 2px 8px rgba(7,117,224,.10);display:block}@media(max-width:600px){.oficina-map{aspect-ratio:4/3}}.carousel-track{display:grid !important;grid-template-columns:repeat(2,1fr) !important;gap:1.5rem !important}@media(max-width:860px){.carousel-track{grid-template-columns:1fr !important}}.obra-card-img-placeholder{background:linear-gradient(135deg,#75D1F2 0%,#0575E0 100%) !important;aspect-ratio:16/9;display:flex !important;align-items:center;justify-content:center;border-radius:6px 6px 0 0;color:rgba(255,255,255,.85);position:relative;overflow:hidden}.obra-card-img-placeholder::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 25% 30%,rgba(255,255,255,.15) 0%,transparent 35%),radial-gradient(circle at 75% 70%,rgba(255,255,255,.10) 0%,transparent 40%);pointer-events:none}.obra-card-img-label{font-family:"Poppins",sans-serif;font-size:.8rem;font-weight:500;letter-spacing:.04em;font-style:italic;text-shadow:0 1px 4px rgba(0,0,0,.15);position:relative;z-index:1}.badge-soon{display:inline-block;background:#052F5C !important;color:#75D1F2 !important;font-size:.72rem;font-weight:700;padding:5px 12px;border-radius:999px;letter-spacing:.06em;text-transform:uppercase}.obra-card-price-soon{color:#0575E0 !important;font-weight:600;font-style:italic;font-size:.95rem !important}.obra-card-bs70{display:flex;flex-direction:column}.carousel-track{align-items:stretch !important}.carousel-track .obra-card{display:flex !important;flex-direction:column !important;height:100% !important;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 12px rgba(7,117,224,.08)}.carousel-track .obra-card-img,.carousel-track .obra-card-img-placeholder{aspect-ratio:16/10 !important;width:100% !important;height:auto !important;object-fit:cover !important;display:block}.carousel-track .obra-card-body{flex:1 1 auto;padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.carousel-track .obra-card-link{margin-top:auto}.carousel-track .obra-card-success-meta,.carousel-track .obra-card-success-meta strong{color:#0575E0 !important}.obra-card-link-wrap{display:block !important;text-decoration:none !important;color:inherit !important;cursor:pointer;transition:transform .25s ease, box-shadow .25s ease}.obra-card-link-wrap:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(7,117,224,.18) !important}.obra-card-link-wrap *{cursor:pointer}.obra-card-link-wrap .obra-card-link{display:inline-flex;align-items:center;gap:6px;color:#0575E0 !important;font-weight:600;margin-top:auto}.obra-card-bs70 .obra-card-img-wrap{aspect-ratio:16/10 !important;width:100% !important;overflow:hidden;border-radius:8px 8px 0 0;display:block;background:#f5f7fa}.obra-card-bs70 .obra-card-img-wrap img.obra-card-img{width:100% !important;height:100% !important;object-fit:cover !important;display:block !important}.propuestas-header{text-align:center;max-width:780px;margin:0 auto 2.5rem;padding:0 1rem}.propuestas-header .section-eyebrow{color:#75D1F2;font-family:"Poppins",sans-serif;font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .75rem 0}.propuestas-header .propuestas-title{color:#0575E0;font-family:"Poppins",sans-serif;font-size:clamp(1.6rem,3.6vw,2.4rem);font-weight:700;line-height:1.2;letter-spacing:-.01em;margin:0}@media(max-width:600px){.propuestas-header{margin-bottom:1.75rem}}.hero-form-card .form-title,.hero-form-card .form-subtitle{display:none !important}.hero-form-card{padding:1.25rem 1.5rem 1.5rem !important}.hero-form-card .clientify-embed-hero{margin-top:0 !important}.hero-form-card .form-legal{font-size:.7rem !important;line-height:1.3 !important;margin-top:.75rem !important}.hero-form-card .form-alt{font-size:.78rem !important;margin-top:.75rem !important}
/* ===== vh-global-fixes-css ===== */
.vh-cta-primary,a.vh-cta-primary{background:rgba(255,255,255,.12) !important;color:#fff !important;border:1.5px solid rgba(255,255,255,.6) !important;padding:.7rem 1.4rem !important;border-radius:8px !important;font-weight:600 !important;font-size:.92rem !important;text-decoration:none !important;box-shadow:none !important;transition:all .25s ease !important;letter-spacing:.01em;}.vh-cta-primary:hover,a.vh-cta-primary:hover{background:#fff !important;color:#0575E0 !important;border-color:#fff !important;transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.18) !important;}.joinchat,.joinchat__button{display:none !important;visibility:hidden !important;pointer-events:none !important;}body .hero-form-card,body section .hero-form-card,body .elementor .hero-form-card{max-width:380px !important;padding:1.5rem 1.5rem !important;margin-left:auto !important;margin-right:0 !important;}@media(max-width:768px){body .hero-form-card,body section .hero-form-card,body .elementor .hero-form-card{max-width:100% !important;margin-left:0 !important;padding:1.25rem !important;}}.footer-rrss{list-style:none !important;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:1.25rem 0 0 0;}.footer-rrss li{margin:0}.footer-rrss a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;transition:all .25s ease;}.footer-rrss a:hover{background:#75D1F2;color:#052F5C;transform:translateY(-2px);}.footer-rrss svg{width:18px;height:18px;display:block}.footer-oficinas{max-width:1200px;margin:2.5rem auto 0;padding:2rem 1.5rem 0;border-top:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;}.footer-oficina{padding:0}.footer-oficina-title{color:#75D1F2 !important;font-family:"Poppins",sans-serif;font-size:.92rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:0 0 .85rem 0 !important;}@media(max-width:768px){.footer-oficinas{grid-template-columns:1fr;gap:1.5rem;padding:2rem 1.25rem 0}}.form-group input,.form-group select,.form-group textarea{background:#fff !important;border:1.5px solid #c5d9ed !important;border-radius:8px !important;padding:.85rem 1rem !important;transition:border-color .2s, box-shadow .2s !important;}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#0575E0 !important;box-shadow:0 0 0 3px rgba(7,117,224,.15) !important;outline:none !important;}.form-group label{font-weight:600 !important;color:#1A2A44 !important;font-size:.82rem !important;margin-bottom:.45rem !important;}.form-group{margin-bottom:1.1rem !important}.form-submit{border-radius:8px !important;padding:1rem 1.5rem !important;font-weight:700 !important;box-shadow:0 4px 14px rgba(7,117,224,.25) !important;transition:all .25s ease !important;margin-top:.5rem;}.form-submit:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(7,117,224,.35) !important;}.form-title{font-size:1.35rem !important;font-weight:700 !important;margin-bottom:.5rem !important}
/* ===== vh-tb-header-azul-css ===== */

/* === HEADER FONDO AZUL === */
body header:not(.fusion-header-wrapper){background:#0575E0!important;box-shadow:0 2px 8px rgba(5,117,224,.18)!important;border-bottom:none!important}

/* === LOGO BLANCO (filter solo sobre <img>, NO sobre el header) === */
body header:not(.fusion-header-wrapper) img{filter:brightness(0) invert(1)!important}
/* Override WPCode #2193 "Bug 5 logo contraste" que aplica filter azul sobre azul
   (especificidad 0,2,3). Esta regla tiene especificidad 0,3,3 → gana post-lazyload. */
body.elementor-page header:not(.fusion-header-wrapper) img[src*="Vivenzia"],
body.elementor-page header:not(.fusion-header-wrapper) img[data-src*="Vivenzia"]{filter:brightness(0) invert(1)!important}
body header:not(.fusion-header-wrapper) .logo,body header:not(.fusion-header-wrapper) a.logo{color:#fff!important}

/* === MENÚ ITEMS BLANCOS === */
body header:not(.fusion-header-wrapper) .nav-menu li a,body header:not(.fusion-header-wrapper) nav a{color:#fff!important;font-weight:500!important}
body header:not(.fusion-header-wrapper) .nav-menu li a:hover,body header:not(.fusion-header-wrapper) nav a:hover{color:rgba(255,255,255,.78)!important}

/* === "Vender" — solo color blanco; el pill (cuando /vender/) lo pone JS === */
body header:not(.fusion-header-wrapper) .nav-menu li a.nav-destacado{color:#fff!important}
body header:not(.fusion-header-wrapper) .nav-menu li a.nav-destacado:hover{color:rgba(255,255,255,.78)!important}

/* === Dropdown arrow (Zonas, Servicios) === */
body header:not(.fusion-header-wrapper) .nav-menu li a .dropdown-arrow{color:#fff!important;opacity:.78!important}

/* === Teléfono === */
body header:not(.fusion-header-wrapper) .nav-tel{color:#fff!important}
body header:not(.fusion-header-wrapper) .nav-tel:hover{color:rgba(255,255,255,.85)!important}

/* === CTA "Valora tu casa" — texto plano blanco === */
body header:not(.fusion-header-wrapper) a.nav-cta[data-vh-fix="cta-header"]{background:transparent!important;color:#fff!important;border:none!important;box-shadow:none!important;padding:.7rem 0!important;font-weight:700!important;letter-spacing:.01em!important;display:inline-flex!important;align-items:center!important;gap:6px!important}
body header:not(.fusion-header-wrapper) a.nav-cta[data-vh-fix="cta-header"]::after{content:'\2192'!important;color:#fff!important;font-weight:700!important;font-size:1em!important;margin-left:6px!important;display:inline-block!important;transition:transform .2s ease!important}
body header:not(.fusion-header-wrapper) a.nav-cta[data-vh-fix="cta-header"] .arrow{display:none!important}
body header:not(.fusion-header-wrapper) a.nav-cta[data-vh-fix="cta-header"]:hover{background:transparent!important;color:rgba(255,255,255,.82)!important;border:none!important;box-shadow:none!important;transform:none!important}
body header:not(.fusion-header-wrapper) a.nav-cta[data-vh-fix="cta-header"]:hover::after{transform:translateX(3px)!important}

/* === Mobile: hamburger blanco === */
body header:not(.fusion-header-wrapper) .hamburger,body header:not(.fusion-header-wrapper) .hamburger span,body header:not(.fusion-header-wrapper) button.hamburger{color:#fff!important;background:transparent!important;border-color:#fff!important}
body header:not(.fusion-header-wrapper) .hamburger span,body header:not(.fusion-header-wrapper) .hamburger::before,body header:not(.fusion-header-wrapper) .hamburger::after{background:#fff!important}

/* ===== vh-buscar-ref-css ===== */

.vh-ref-search{
	display:flex;gap:8px;align-items:center;
	max-width:520px;margin:0 0 1.25rem;
	font-family:'Poppins',sans-serif;
}
.vh-ref-search label{
	font-size:.78rem;color:#5a7088;font-weight:600;
	text-transform:uppercase;letter-spacing:.06em;
	white-space:nowrap;
}
.vh-ref-search input[type="text"]{
	flex:1;min-width:0;padding:.55rem .8rem;
	border:1px solid #D1E3F3;border-radius:8px;
	font-size:.95rem;color:#1A2A44;background:#fff;
	transition:border-color .15s ease;
}
.vh-ref-search input[type="text"]:focus{outline:none;border-color:#0575E0;box-shadow:0 0 0 3px rgba(7,117,224,.15)}
.vh-ref-search button{
	padding:.55rem 1.1rem;background:#0575E0;color:#fff;
	border:0;border-radius:8px;font-weight:600;font-size:.9rem;
	cursor:pointer;transition:background .15s ease;
	white-space:nowrap;
}
.vh-ref-search button:hover{background:#0464c0}
.vh-ref-search button:disabled{background:#a8c7ec;cursor:not-allowed}
.vh-ref-search .vh-ref-error{color:#c62828;font-size:.85rem;margin-left:8px;display:none}
.vh-ref-search .vh-ref-error.is-visible{display:inline}
@media(max-width:600px){
	.vh-ref-search{flex-wrap:wrap}
	.vh-ref-search label{flex:1 0 100%}
	.vh-ref-search input,.vh-ref-search button{flex:1}
}

