/* ===== 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;
}


/* === 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-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}

