/*
 * VARDA, home "Hasta la última casa".
 * Estilos de los bloques de la portada (página 1023; marcado en home-bloques.php).
 * Solo se cargan en la portada (varda_home_assets en functions.php).
 * Marca: carbón #2d333b, menta #92c5bc, menta claro #e9f3f1, verde #346767;
 * Audiowide en titulares y Poppins en texto.
 * Orden: base · botones · hero y vídeo · premio · servicios · cifras y logos ·
 * brecha digital · casos · método · equipo · contacto y formulario.
 */

/* ---------- Base ---------- */
.vh{--gris:#2d333b;--menta:#92c5bc;--gris-claro:#e5e4e4;--verde:#346767;--blanco:#fff;--fondo:#f4f4f4;--muted:#56606a;
	--display:"Audiowide","Arial Black",sans-serif;--body:"Poppins",Arial,sans-serif;font-family:var(--body);color:var(--gris)}
.vh *,.vh *::before,.vh *::after{box-sizing:border-box}
/* el tema añade margen inferior a los párrafos; en los bloques de la home lo quitamos */
.vh p{margin:0!important}
.vh-on-menta{--muted:#2f4746}
.vh :focus-visible{outline:3px solid var(--verde);outline-offset:3px;border-radius:4px}
.vh .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
/* todos los apartados de la home: 50 px arriba y abajo (la banda del premio va aparte) */
body .fusion-fullwidth.vh-hero-sec{padding-top:50px!important;padding-bottom:50px!important;--awb-padding-top:50px!important;--awb-padding-bottom:50px!important}

/* ---------- Botones ----------
   Formato único: píldora, Poppins 500, flecha a la derecha que al pasar el ratón salta a la
   izquierda mientras el texto se desplaza (animación de Avada, data-hover="icon_position").
   Variantes: oscura (carbón), clara (menta) y blanca (sobre fondo oscuro). */
.vh-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.vh-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:500 15.5px/1 var(--body);padding:14px 22px;border-radius:999px;text-decoration:none!important;cursor:pointer;border:1.5px solid var(--gris);transition:background .2s,color .2s,border-color .2s}
.fusion-button.vh-btn,.vh-form-col .fusion-button.form-form-submit{
	--button_gradient_top_color:#2d333b;--button_gradient_bottom_color:#2d333b;--button_gradient_top_color_hover:#346767;--button_gradient_bottom_color_hover:#346767;
	--button_accent_color:#fff;--button_accent_hover_color:#fff;--button_border_color:transparent;--button_border_hover_color:transparent;
	--button_typography-font-family:"Poppins",Arial,sans-serif;--button_typography-font-weight:500;--button_text_transform:none;
	display:inline-flex!important;align-items:center;justify-content:center;width:auto!important;
	font-family:"Poppins",Arial,sans-serif!important;font-size:15.5px!important;font-weight:500!important;line-height:1!important;letter-spacing:0!important;text-transform:none!important;
	padding:14px 20px!important;border:0!important;border-radius:999px!important;text-decoration:none!important;
	background:#2d333b!important;color:#fff!important;transition:background-color .2s,color .2s!important}
.fusion-button.vh-btn .fusion-button-text,.vh-form-col .fusion-button.form-form-submit .fusion-button-text{color:inherit!important;font:inherit!important;text-transform:none!important}
.fusion-button.vh-btn i,.vh-form-col .fusion-button.form-form-submit i{color:inherit!important;font-size:13px}
.fusion-button.vh-btn:hover,.fusion-button.vh-btn:focus-visible,.vh-form-col .fusion-button.form-form-submit:hover,.vh-form-col .fusion-button.form-form-submit:focus-visible{background:#346767!important;color:#fff!important}
.fusion-button.vh-btn--light{--button_gradient_top_color:#92c5bc;--button_gradient_bottom_color:#92c5bc;--button_accent_color:#2d333b;background:#92c5bc!important;color:#2d333b!important}
.fusion-button.vh-btn--light:hover,.fusion-button.vh-btn--light:focus-visible{background:#346767!important;color:#fff!important}
.fusion-button.vh-btn.vh-btn--white{--button_gradient_top_color:#fff;--button_gradient_bottom_color:#fff;--button_accent_color:#2d333b;background:#fff!important;color:#2d333b!important}
.fusion-button.vh-btn.vh-btn--white:hover,.fusion-button.vh-btn.vh-btn--white:focus-visible{background:#92c5bc!important;color:#2d333b!important}

/* ---------- Hero ---------- */
body .fusion-fullwidth.vh-hero-sec:has(h1){background:linear-gradient(180deg,#e9f3f1 0%,#f4f9f8 70%,#ffffff 100%)!important;--awb-background-color:transparent!important}
.vh-hero-title h1{white-space:normal}
.vh-hero-title .vh-l{display:block;white-space:nowrap}
/* línea con la palabra clave, dentro del H1 y encima del lema */
.vh-hero-title .vh-h1-pre{display:block;margin-bottom:14px;font:600 15.5px/1.3 "Poppins",Arial,sans-serif;letter-spacing:.01em;color:#346767}
.vh .vh-lead,.vh-lead{font-size:clamp(18px,1.5vw,21px)!important;line-height:1.65;color:var(--muted)}
.vh-lead .vh-end{display:block;margin-top:.9em;color:var(--gris);font-weight:500}
.vh-spot-cap{display:flex;justify-content:space-between;gap:6px 16px;flex-wrap:wrap;font-size:14px;color:var(--muted);margin-top:16px}
.vh-spot-cap strong{color:var(--gris);font-weight:600}

/* Vídeo: a todo el ancho de su columna, 16:9, con póster y play; el iframe se crea al pulsar
   (varda_spot_facade en functions.php y varda-home.js) */
.fusion-video.vh-spot{--awb-max-width:100%!important;--awb-max-height:none!important;width:100%!important;max-width:100%!important;align-self:stretch!important;box-shadow:0 26px 48px -28px rgba(45,51,59,.5)}
.vh-spot .fluid-width-video-wrapper{padding-top:56.25%!important}
.fusion-video.vh-spot,.vh-spot .video-shortcode,.vh-spot .fluid-width-video-wrapper,.vh-spot iframe{border-radius:14px;overflow:hidden}
.vh-spot .vh-lite{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;margin:0;cursor:pointer;display:grid;place-items:center;
	background:linear-gradient(135deg,#46505b,#2d333b) center/cover no-repeat;border-radius:14px}
.vh-spot .vh-lite-play{width:76px;height:76px;border-radius:50%;background:#92c5bc;display:grid;place-items:center;transition:transform .2s,background-color .2s}
.vh-spot .vh-lite-play::before{content:"";border-left:22px solid #2d333b;border-top:13px solid transparent;border-bottom:13px solid transparent;margin-left:6px}
.vh-spot .vh-lite:hover .vh-lite-play,.vh-spot .vh-lite:focus-visible .vh-lite-play{transform:scale(1.08);background:#fff}
.vh-spot .vh-lite:focus-visible{outline:3px solid #346767;outline-offset:3px}
.vh-spot .vh-lite-lbl{position:absolute;left:16px;bottom:14px;color:#fff;font:500 14px/1 var(--body,"Poppins",Arial,sans-serif);background:rgba(20,24,28,.72);padding:8px 12px;border-radius:999px}

/* ---------- Franja del premio: banda carbón con dos botones ---------- */
body .fusion-fullwidth.vh-band-sec{background-color:#2d333b!important;--awb-background-color:#2d333b!important;border-block:0;min-height:0!important;
	padding-top:18px!important;padding-bottom:18px!important;--awb-padding-top:18px!important;--awb-padding-bottom:18px!important}
.vh-band-sec .fusion-layout-column{margin-top:0!important;margin-bottom:0!important;--awb-margin-bottom-large:0px!important;--awb-margin-bottom-medium:0px!important;--awb-margin-bottom-small:0px!important}
.vh-band-sec .fusion-column-wrapper{margin:0!important;padding:0!important;min-height:0!important}
.vh-band{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px 22px;align-items:center}
.vh-band-sec .vh-band{--muted:#c9d3d1;color:#fff}
.vh-band .vh-ico{width:42px;height:42px;border-radius:50%;background:#92c5bc;color:#2d333b;display:grid;place-items:center;font-size:18px}
.vh-band .vh-txt{display:grid;width:max-content;max-width:100%;min-width:0;align-self:center}
.vh-band b{display:block;font-family:var(--display);font-weight:400;font-size:clamp(15px,1.5vw,18px);line-height:1.25;color:#fff}
/* el texto no pasa del ancho del título sin inflar la altura de la banda */
.vh-band p{font-size:14px;color:#c9d3d1;min-width:0!important;contain:inline-size}
.vh-band a{font-weight:500;white-space:nowrap}
.vh-band-btns{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.vh-band-sec .fusion-button.vh-btn--light:hover,.vh-band-sec .fusion-button.vh-btn--light:focus-visible{background:#fff!important;color:#2d333b!important}
@media (max-width:700px){.vh-band{grid-template-columns:auto minmax(0,1fr)}.vh-band-btns{grid-column:1/-1;justify-content:flex-start}}

/* ---------- Servicios con filtro "Soy…" ---------- */
.vh-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}
.vh-filter .vh-soy{font-weight:600;margin-right:6px}
.vh-chip{font:500 14px var(--body);border:1.5px solid var(--gris-claro);background:var(--blanco);color:var(--gris);border-radius:999px;padding:8px 14px;cursor:pointer}
.vh-chip{transition:background-color .2s,border-color .2s}
.vh-chip:hover,.vh-chip:focus-visible{background:var(--menta);border-color:var(--menta)}
.vh-chip[aria-pressed="true"]:hover{background:var(--gris);border-color:var(--gris)}
@media (prefers-reduced-motion:reduce){.vh-chip{transition:none}}
.vh-chip[aria-pressed="true"]{background:var(--gris);border-color:var(--gris);color:var(--blanco)}
.vh-count{font-size:14px;color:var(--muted)}
.vh .vh-count{margin-bottom:24px!important}
/* panel de servicios: frase del tipo de cliente a la izquierda, servicios en 2 columnas a la derecha */
.vh-sv-panel{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:40px;align-items:start;background:var(--fondo);border-radius:12px;padding:32px}
.vh-sv-txt{display:grid;gap:24px;justify-items:start}
.vh p.vh-sv-frase{font-size:clamp(18px,1.5vw,21px);line-height:1.5;color:var(--gris)}
.vh-sv-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.vh-sv{display:flex;align-items:center;gap:14px;min-height:64px;background:var(--blanco);border:1.5px solid transparent;border-radius:10px;padding:14px 18px;text-decoration:none!important;color:var(--gris)!important;font-weight:600;font-size:15.5px;line-height:1.3;transition:border-color .2s}
.vh-sv[hidden]{display:none}
.vh-sv:hover{border-color:var(--menta)}
.vh-sv:focus-visible{outline:3px solid var(--verde);outline-offset:2px}
.vh-sv-ico{flex:none;width:26px;height:26px;color:var(--verde)}
.vh-sv-fl{flex:none;width:14px;height:14px;margin-left:auto;transition:transform .2s}
.vh-sv:hover .vh-sv-fl{transform:translateX(3px)}
@media (max-width:900px){.vh-sv-panel{grid-template-columns:1fr;gap:22px;padding:22px}}
@media (max-width:560px){.vh-sv-lista{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.vh-sv,.vh-sv-fl{transition:none}}
.vh-collab{margin-top:28px;display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;justify-content:space-between;padding:22px 26px;border-radius:12px;background:var(--gris)}
.vh-collab p{max-width:66ch;color:#d6dddf}
.vh-collab strong{color:var(--blanco)}

/* ---------- Experiencia que se puede medir ----------
   Izquierda: 2.000 emplazamientos sobre el mapa de España (contorno de Natural Earth, dominio
   público). Derecha: +10 años con barras de cobertura y +20 proyectos con hojas de plano.
   Debajo, el carrusel de logos. Los dibujos se animan una sola vez al aparecer (varda-home.js). */
.fusion-text:has(> .vh-gone){display:none!important}
/* una sola fila de tres columnas: emplazamientos + mapa · años + barras · proyectos + hojas */
/* cada columna mide lo que su dibujo (288 px) y el espacio sobrante se reparte entre ellas:
   la primera arranca en el margen izquierdo y la tercera acaba en el derecho, como el resto de la página */
.vh-exp{container-type:inline-size;display:grid;grid-template-columns:repeat(3,minmax(0,288px));justify-content:space-between;gap:0;align-items:stretch;margin:4px 0 28px}
.vh-exp-der{display:contents}
.vh-exp-izq,.vh-exp-der > div{display:flex;flex-direction:column;min-width:0;padding:0}
.vh-exp-der > div{position:relative}
/* separadores verticales a mitad del espacio entre columnas */
.vh-exp-der > div::before{content:"";position:absolute;top:0;bottom:0;left:calc((864px - 100cqw) / 4);border-left:1.5px solid rgba(45,51,59,.35)}
.vh-exp-n{display:grid;gap:2px}
.vh-exp-big{font:400 clamp(34px,3.4vw,46px)/1 var(--display);font-variant-numeric:tabular-nums;color:var(--gris);margin-bottom:6px}
.vh-exp-lbl{font-weight:600;font-size:17px;color:var(--gris)}
.vh-exp-sub{font-size:14px;color:var(--muted)}
/* escenario común: los tres dibujos ocupan la misma superficie */
.vh-exp-fig{position:relative;margin-top:auto;width:100%;max-width:288px;aspect-ratio:5/4}
.vh-exp-izq .vh-exp-n,.vh-exp-der .vh-exp-n{margin-bottom:18px!important}
/* el dibujo ocupa exactamente el escenario y se ajusta dentro sin salirse */
.vh-exp-fig > svg{position:absolute;inset:0;display:block;width:100%;height:100%}
.vh-exp-mapa .vh-es{fill:url(#vh-trama);stroke:#5f8a83;stroke-width:1}
.vh-exp-mapa .vh-es-box{fill:none;stroke:#5f8a83;stroke-width:1;stroke-dasharray:4 4}
.vh-exp-mapa .sitio{fill:#2d333b;opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.2);transition:opacity .4s,transform .5s cubic-bezier(.21,.6,.35,1)}
.vh-exp-mapa .halo{fill:#e9f3f1;opacity:0;transition:opacity .6s}
.vh-exp.on .vh-exp-mapa .sitio{opacity:1;transform:none}
.vh-exp.on .vh-exp-mapa .halo{opacity:.8}
.vh-exp-viz .bar{fill:#e9f3f1;stroke:#2d333b;stroke-width:1.3;transform-box:fill-box;transform-origin:bottom;transform:scaleY(0);transition:transform .5s cubic-bezier(.21,.6,.35,1)}
.vh-exp.on .vh-exp-viz .bar{transform:none}
.vh-exp-viz .hoja{opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s}
.vh-exp.on .vh-exp-viz .hoja{opacity:1;transform:none}
/* tablet y móvil: el mapa con su cifra ocupa una fila; debajo, años y proyectos lado a lado */
@media (max-width:900px){
	.vh-exp{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;gap:0;row-gap:24px;margin-top:22px}
	.vh-exp-der > div::before{display:none}
	.vh-exp-izq{grid-column:1/-1;padding:0 0 24px;border-bottom:1.5px solid rgba(45,51,59,.35)}
	.vh-exp-izq .vh-exp-fig{max-width:340px;margin-inline:auto}
	.vh-exp-der > div{padding:0 0 0 18px;border-top:0;border-left:1.5px solid rgba(45,51,59,.35)}
	.vh-exp-der > div:first-child{padding:0 18px 0 0;border-left:0}
	.vh-exp-der .vh-exp-fig{max-width:none}
}
@media (max-width:560px){
	.vh-exp-big{font-size:34px}
	.vh-exp-der .vh-exp-lbl{font-size:14px}
	.vh-exp-der .vh-exp-sub{font-size:14px;line-height:1.4}
}
@media (prefers-reduced-motion:reduce){.vh-exp-mapa .sitio,.vh-exp-mapa .halo,.vh-exp-viz .bar,.vh-exp-viz .hoja{transition:none}}

.vh-lh,h3.vh-lh{font-family:var(--body)!important;font-size:17px!important;font-weight:600!important;line-height:1.5!important;letter-spacing:0!important;text-transform:none!important;color:var(--gris)!important;margin:0!important}

/* Logos de clientes: tamaño visual parecido entre marcas (lienzo de 168 px, ver GUIA-LOGOS-CARRUSEL.md) */
.vh-logos{margin-top:0}
.vh-logos .vcm-track{gap:clamp(24px,3.5vw,44px)}
/* los PNG traen mucho borde transparente: la fila pasa de 104 a 72 px (el logo visible más alto mide
   unos 40 px), así el espacio vacío por encima y por debajo de cada logo queda en la mitad (≈16 px) */
.vh-logos .vcm-track{height:72px}
.vh-logos .vcm-item{height:72px;overflow:visible}
.vh-logos .vcm-logo,.vh-logos .vcm-logo--xl,.vh-logos .vcm-logo--sm,.vh-logos .vcm-logo--sm20{height:80px}
.vh-logos .vcm-logo[src*="aat_logo"]{height:67px}
.vh-logos .vcm-logo[src*="cotesa_logo"]{height:80px}
.vh-logos .vcm-logo[src*="ericsson_logo"]{height:53px}
.vh-logos .vcm-logo[src*="ingeasist_logo"]{height:104px}
.vh-logos .vcm-logo[src*="insyte_logo"]{height:89px}
.vh-logos .vcm-logo[src*="orange_logo"]{height:58px}
.vh-logos .vcm-logo[src*="stratos_logo"]{height:124px}
.vh-logos .vcm-logo[src*="nokia_logo"]{height:103px}
.vh-logos .vcm-logo[src*="onlycable_logo"]{height:54px}
.vh-logos .vcm-logo[src*="semi_logo"]{height:74px}
.vh-logos .vcm-logo[src*="telefonica_logo"]{height:101px}
.vh-logos .vcm-item{opacity:.85}
.vh-logos .vcm-logo{filter:grayscale(1) brightness(.75) contrast(1.2)}
.vh-logos .vcm-item:hover .vcm-logo{filter:none}
/* botón de pausa a la derecha del carrusel, centrado en su fila */
.vh-logos .vcm-wrap{display:flex;align-items:center;gap:16px}
.vh-logos .vcm-viewport{flex:1 1 auto;min-width:0}
.vh-logos .vcm-pause-toggle{position:static;order:2;flex:none;margin:0;width:44px;height:44px;border-radius:50%;background:#2d333b;color:#fff}
.vh-logos .vcm-pause-toggle:hover,.vh-logos .vcm-pause-toggle:focus-visible{background:#fff;color:#2d333b}
.vh-logos .vcm-pause-toggle svg[hidden]{display:none!important}

/* ---------- Brecha digital: lista y animaciones de las tres redes (varda-redes.js) ---------- */
.vh-list{margin:0!important;padding:0!important;list-style:none;display:grid;gap:12px}
.vh-list li{padding-left:20px;position:relative;color:var(--muted);font-size:17px;margin:0!important}
.vh-list li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border-radius:50%;background:var(--menta)}
.vh-list li strong{color:var(--gris)}
.vh-redes{margin:0}
.vh-rtabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.vh-rtabs button{font:500 14px/1 var(--body);min-height:44px;padding:0 18px;border-radius:999px;border:1.5px solid var(--gris);background:#fff;color:var(--gris);cursor:pointer;transition:background-color .2s,color .2s}
.vh-rtabs button:hover{background:var(--menta)}
.vh-rtabs button[aria-selected="true"]{background:var(--gris);border-color:var(--gris);color:#fff}
.vh-rtabs button:focus-visible{outline:3px solid var(--verde);outline-offset:3px}
.vh-rstage{border-radius:14px;overflow:hidden;aspect-ratio:3/2;background:#fff;box-shadow:0 24px 44px -28px rgba(45,51,59,.45)}
.vh-rpanel,.vh-rpanel svg{width:100%;height:100%;display:block}
.vh-rpanel[hidden]{display:none}
.vh-redes svg text{font-family:"Poppins",Arial,sans-serif}
.vh-redes .vr-mono{font-family:"Audiowide",sans-serif}
.vh-rcap{font-size:14px;color:var(--muted);margin-top:12px;min-height:3em}
.vr-fade{transition:opacity .5s}
.vr-hc{fill:#46505a;transition:fill .35s}.vr-hc.on{fill:#92c5bc}
.vr-hb .vr-wnd{fill:#9aa5a3;transition:fill .4s}.vr-hb.on .vr-wnd{fill:#ffd66b}
.vr-badge .vr-bg{fill:#9aa5a3;transition:fill .3s}.vr-badge.on .vr-bg{fill:#346767}
.vr-badge .vr-on{display:none}.vr-badge.on .vr-on{display:inline}.vr-badge.on .vr-off{display:none}
.vr-ap{fill:#fff;stroke:#b8c4c1;stroke-width:1.2;transition:fill .35s,stroke .35s}.vr-ap.on{fill:#dcefeb;stroke:#346767}
.vr-tv rect{fill:#fff;stroke:#b8c4c1;stroke-width:1.1;transition:fill .35s,stroke .35s}.vr-tv.on rect{fill:#92c5bc;stroke:#346767}
/* ICT: destello de la vivienda cuando entra su pulso */
.vr-ap.vr-hit{fill:#b7ddd5}
.vr-tv.vr-hit rect{fill:#fff}

/* ---------- Casos de éxito: ficha (hoja de plano con cajetín) a la izquierda e índice a la derecha ---------- */
.vh-casos{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:start}
/* en el HTML el índice va primero, para el teclado y los lectores de pantalla */
.vh-casos .vh-cx-side{grid-column:2;grid-row:1}
.vh-casos .vh-cx-panels{grid-column:1;grid-row:1}
.vh-cx-list{display:grid;border-top:1.5px solid #2d333b}
.vh-cx-list button{all:unset;box-sizing:border-box;cursor:pointer;display:grid;gap:2px;padding:16px 16px 16px 22px;border-bottom:1.5px solid #2d333b;position:relative;transition:background-color .2s}
.vh-cx-list button::before{content:"";position:absolute;left:0;top:-1.5px;bottom:-1.5px;width:6px;background:transparent;transition:background-color .2s}
.vh-cx-list button:hover{background:rgba(255,255,255,.35)}
.vh-cx-list button[aria-selected="true"]{background:#fff}
.vh-cx-list button[aria-selected="true"]::before{background:#2d333b}
.vh-cx-list button:focus-visible{outline:3px solid #2d333b;outline-offset:-3px}
.vh-cx-t{font:400 13px/1.2 "Audiowide","Arial Black",sans-serif;color:#2f4746}
.vh-cx-h{font:600 17px/1.35 "Poppins",Arial,sans-serif;color:#2d333b}
.vh-cx-panel[hidden]{display:none}
/* barra de progreso del cambio automático (en el caso activo) y controles bajo el índice */
.vh-cx-prog{position:absolute;left:0;right:0;bottom:-1.5px;height:3px;background:rgba(45,51,59,.12)}
.vh-cx-prog i{display:block;height:100%;width:0;background:#346767}
.vh-cx-ctrl{margin-top:18px}
.vh-hoja{background:#fff;border:1.5px solid #2d333b;border-radius:8px;overflow:hidden;animation:vhHoja .35s cubic-bezier(.21,.6,.35,1)}
@keyframes vhHoja{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.vh-hoja-cab{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#e9f3f1;border-bottom:1.5px solid #2d333b;padding:12px 20px}
.vh-hoja-tipo{font:400 15px/1.2 "Audiowide","Arial Black",sans-serif;color:#2d333b}
.vh-hoja-n{font-size:14px;color:#2f4746}
.vh-hoja h3{font-family:"Poppins",Arial,sans-serif!important;font-size:19px!important;font-weight:600!important;line-height:1.3!important;letter-spacing:0!important;text-transform:none!important;color:#2d333b!important;margin:0!important;padding:20px 20px 18px!important}
.vh-hoja dl{margin:0!important;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #2d333b}
.vh-hoja dl div{padding:12px 20px 16px;min-width:0}
.vh-hoja dl div:nth-child(even){border-left:1px solid #2d333b}
.vh-hoja dl div:nth-child(n+3){border-top:1px solid #2d333b}
.vh-hoja dt{font-size:12.5px!important;font-weight:400!important;color:#2f4746!important;margin:0 0 3px!important}
.vh-hoja dd{margin:0!important;font-size:15.5px!important;line-height:1.5!important;color:#2d333b!important}
.vh-hoja dd.vh-res{font-weight:600!important}
@media (max-width:900px){.vh-casos{grid-template-columns:1fr;gap:24px}.vh-casos .vh-cx-side,.vh-casos .vh-cx-panels{grid-column:1;grid-row:auto}}
@media (max-width:560px){.vh-hoja dl{grid-template-columns:1fr}.vh-hoja dl div:nth-child(even){border-left:0}.vh-hoja dl div:nth-child(n+2){border-top:1px solid #2d333b}}

/* ---------- Cómo trabajamos ---------- */
.vh-steps{list-style:none;margin:0!important;padding:0!important;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));counter-reset:st}
.vh-steps li{counter-increment:st;padding:0 24px 0 0;display:grid;gap:8px;align-content:start;position:relative;min-width:0;margin:0!important}
.vh-steps li::before{content:counter(st);font-family:var(--display);font-size:16px;width:44px;height:44px;border-radius:50%;background:var(--menta);color:var(--gris);display:grid;place-items:center;position:relative;z-index:1;margin-bottom:8px}
.vh-steps li::after{content:"";position:absolute;left:44px;right:0;top:22px;border-top:2px solid var(--menta)}
.vh-steps li:last-child::after{display:none}
.vh-steps h3{font-family:var(--body)!important;font-size:17px!important;font-weight:600!important;margin:0!important;text-transform:none!important;letter-spacing:0!important;color:var(--gris)!important;line-height:1.35!important}
.vh-steps p{color:var(--muted);font-size:15.5px}
@media (max-width:860px){.vh-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}.vh-steps li::after{display:none}}
@media (max-width:560px){.vh-steps{grid-template-columns:1fr;gap:22px}}

/* ---------- "Una oficina técnica con nombre y apellidos" ----------
   Foto a la izquierda; a la derecha título, un párrafo, la cita como protagonista y las
   credenciales en un cajetín de plano. */
.fusion-builder-row:has(> .fusion-layout-column .vh-car) > .fusion-layout-column:has(.vh-car){order:-1}
.fusion-layout-column:has(.vh-equipo) .fusion-text p:empty{display:none}
.vh-equipo{display:grid;gap:24px;margin-top:22px}
.vh-equipo .vh-actions{margin:0}
.vh blockquote.vh-quote{position:relative;border:0!important;border-left:4px solid #2d333b!important;background:none!important;padding:2px 0 2px 22px!important;margin:0!important;
	font-style:normal!important;font-family:"Audiowide","Arial Black",sans-serif!important;font-size:clamp(24px,2.6vw,34px)!important;line-height:1.25!important;color:#2d333b!important;quotes:none}
.vh blockquote.vh-quote cite{display:block;font-family:"Poppins",Arial,sans-serif!important;font-style:normal!important;font-weight:400;font-size:14px!important;line-height:1.4;color:#2f4746!important;margin-top:12px!important}
/* cajetín de credenciales */
.vh-ficha{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border:1.5px solid #2d333b;border-radius:4px;background:rgba(255,255,255,.4)}
.vh-ficha div{padding:10px 14px;min-width:0}
.vh-ficha div:nth-child(even){border-left:1px solid #2d333b}
.vh-ficha div:nth-child(n+3){border-top:1px solid #2d333b}
.vh-ficha dt{font-size:12.5px;font-weight:400;color:#2f4746;margin:0 0 2px}
.vh-ficha dd{margin:0;font-size:14px;font-weight:600;line-height:1.35;color:#2d333b}
@media (max-width:560px){.vh-ficha{grid-template-columns:1fr}.vh-ficha div:nth-child(even){border-left:0}.vh-ficha div:nth-child(n+2){border-top:1px solid #2d333b}}
/* carrusel de fotos */
.vh-car{display:grid;gap:12px;min-width:0}
.vh-car .vh-view{position:relative;aspect-ratio:4/3;max-width:100%;border-radius:16px;overflow:hidden;background:var(--gris);box-shadow:0 28px 50px -30px rgba(45,51,59,.6)}
.vh-car .vh-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s linear .6s}
.vh-car .vh-slide.on{opacity:1;visibility:visible;transition:opacity .6s ease}
.vh-car .vh-slide img{width:100%;height:100%;object-fit:cover;display:block}
.vh-car figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 18px 14px;font-size:15.5px;color:var(--blanco);background:linear-gradient(rgba(45,51,59,0),rgba(45,51,59,.85) 28px)}
/* controles (anterior, siguiente, pausa y puntos): compartidos por el carrusel de fotos y los casos de éxito */
.vh-ctrl{display:flex;align-items:center;gap:10px}
.vh-ctrl .vh-arrow,.vh-ctrl .vh-pause{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--gris);background:var(--blanco);color:var(--gris);display:grid;place-items:center;cursor:pointer;padding:0}
.vh-ctrl .vh-arrow:hover,.vh-ctrl .vh-pause:hover{background:var(--gris);color:var(--blanco)}
.vh-ctrl svg{width:18px;height:18px}
.vh-ctrl .vh-dots{display:flex;gap:8px;margin-left:auto}
.vh-ctrl .vh-dot{width:12px;height:12px;border-radius:50%;border:1.5px solid var(--gris);background:transparent;padding:0;cursor:pointer}
.vh-ctrl .vh-dot[aria-current="true"]{background:var(--gris)}
.vh-car .vh-bar{height:3px;background:rgba(45,51,59,.18);border-radius:2px;overflow:hidden}
.vh-car .vh-bar i{display:block;height:100%;width:0;background:var(--gris)}

/* ---------- Contacto ---------- */
/* llamada final hacia la página de contacto (franja carbón, el formulario está en /contacto/) */
.vh-cta{display:flex;align-items:center;justify-content:space-between;gap:20px 40px;flex-wrap:wrap}
.vh .vh-cta h2,.vh-cta h2{font-family:var(--display)!important;font-weight:400!important;font-size:clamp(28px,3vw,38px)!important;line-height:1.15!important;letter-spacing:0!important;text-transform:none!important;color:#fff!important;margin:0 0 8px!important}
.vh.vh-cta p{color:#c9d3d1!important;font-size:17px;margin:0!important;max-width:40em}
.vh-cta > div{flex:1 1 30em}
.vh-brecha-btn{margin-top:22px}
.vh-contact{display:grid;gap:16px}
.vh-line{display:grid;gap:2px}
.vh-line span{font-size:14px;color:var(--muted)}
.vh-line a,.vh-line b{font-size:18px;font-weight:500;color:var(--gris);text-decoration:none}
.vh-line a:hover{color:var(--verde);text-decoration:underline;text-underline-offset:4px}

/* Formulario como "solicitud de proyecto": una hoja de expediente sobre papel pautado, con franja
   de obra arriba y sombra desplazada. Los campos son de Avada Forms (formulario 2473; en inglés, su copia 5249);
   varda-home.js añade la cabecera, la intro, "opcional" y la nota final, y pone Email antes que Empresa. */
.fusion-layout-column.vh-form-col > .fusion-column-wrapper{background:transparent!important;padding:0!important;border-radius:0!important}
.vh-form-col .fusion-form .fusion-fullwidth{background:transparent!important;padding:0!important;margin:0!important;--awb-background-color:transparent!important}
.vh-form-col .fusion-form .fusion-layout-column{padding:0!important;margin:0!important;width:100%!important}
.vh-form-col .fusion-form .fusion-column-wrapper{counter-reset:vfc;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px!important;margin:0 14px 14px 0!important;padding:0 30px 22px!important;
	background:#f8faf9 repeating-linear-gradient(180deg,transparent 0 31px,rgba(45,51,59,.045) 31px 32px)!important;
	border:0;border-radius:0;box-shadow:14px 14px 0 #5e978e!important;overflow:visible}
/* franja de obra (carbón y blanco en diagonal) */
.vh-form-col .fusion-form .fusion-column-wrapper::before{content:""!important;grid-column:1/-1;height:10px;margin:0 -30px 4px;background:repeating-linear-gradient(135deg,#2d333b 0 9px,#fff 9px 18px)}
.vh-form-col .fusion-form .fusion-form-field{margin:0!important;min-width:0;background:transparent;padding:0!important}
.vh-form-col .fusion-form .vh-f-tipo,.vh-form-col .fusion-form .fusion-form-textarea-field,.vh-form-col .fusion-form .fusion-text,.vh-form-col .fusion-form .form-submission-notices{grid-column:1/-1;margin:0!important}
.vh-form-col .fusion-form .fusion-form-label-wrapper{margin:0!important}
/* cabecera de expediente e intro */
.vh-form-col .vh-f-cab{grid-column:1/-1;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:10px 0;border-bottom:2px solid #2d333b}
.vh-f-doc{font:400 20px/1.2 "Poppins",Arial,sans-serif;color:#2d333b}
.vh-form-col .vh-f-logo{display:block;width:86px;height:auto;flex:none}
.vh-form-col .vh-f-intro{grid-column:1/-1;margin-top:6px}
.vh-form-col .vh-f-intro p{margin:0!important}
.vh-form-col .vh-f-tit{font:400 clamp(28px,3vw,36px)/1.15 "Audiowide","Arial Black",sans-serif!important;color:#2d333b!important;margin-top:4px!important}
.vh-form-col .vh-f-sub{font-size:15.5px!important;color:#2d333b!important;margin-top:6px!important}
/* rótulos numerados (01, 02…) en mayúsculas, como en un impreso */
.vh-form-col .fusion-form .fusion-form-field:not(.fusion-form-consent-field):not(.fusion-form-submit-field) > .fusion-form-label-wrapper label,.vh-form-col .fusion-form .fusion-form-textarea-field > label,.vh-form-col .fusion-form .vh-f-tipo legend{counter-increment:vfc}
.vh-form-col .fusion-form label,.vh-form-col .fusion-form legend .label{font-family:"Poppins",Arial,sans-serif!important;font-size:12.5px!important;font-weight:600!important;letter-spacing:.06em!important;text-transform:uppercase!important;color:#2d333b!important;margin:0 0 6px!important}
.vh-form-col .fusion-form .fusion-form-field:not(.fusion-form-consent-field):not(.fusion-form-submit-field) > .fusion-form-label-wrapper label::before,.vh-form-col .fusion-form .fusion-form-textarea-field > label::before,.vh-form-col .fusion-form .vh-f-tipo legend::before{content:counter(vfc,decimal-leading-zero);margin-right:10px;color:#2d333b}
.vh-form-col .fusion-form legend{padding:0!important;margin:0 0 10px!important;font-size:12.5px!important;color:#2d333b!important}
.vh-form-col .fusion-form abbr.fusion-form-element-required{display:none}
.vh-form-col .vh-f-opc{font-size:12px;font-weight:400;letter-spacing:0;text-transform:none;color:#56606a}
/* campos: solo una línea, como para escribir a mano */
.vh-form-col .fusion-form input.fusion-form-input:not([type=checkbox]):not([type=radio]){border:0!important;border-bottom:1.5px solid #9fc4bc!important;border-radius:0!important;padding:6px 2px!important;height:40px!important;background:transparent!important;font-size:15.5px!important;font-weight:400!important;color:#2d333b!important}
.vh-form-col .fusion-form textarea.fusion-form-input{border:1.5px solid #9fc4bc!important;border-radius:2px!important;background:rgba(255,255,255,.7)!important;padding:10px 12px!important;height:auto;min-height:78px!important;resize:vertical!important;font-size:15.5px!important;line-height:1.5!important;color:#2d333b!important}
.vh-form-col .fusion-form .fusion-form-input:focus{outline:none;box-shadow:none!important;border-color:#346767!important}
.vh-form-col .fusion-form .fusion-form-input::placeholder{color:#8a959c!important;opacity:1}
/* tipo de proyecto: casillas con círculo y flecha */
.vh-form-col .vh-f-tipo fieldset{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.vh-form-col .vh-f-tipo legend{width:100%}
.vh-form-col .vh-f-tipo .fusion-form-radio{position:relative;margin:0!important;padding:0!important}
.vh-form-col .vh-f-tipo .fusion-form-radio input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer;z-index:1;width:100%;height:100%}
.vh-form-col .vh-f-tipo .fusion-form-radio label{position:relative;display:inline-flex!important;align-items:center;gap:8px;min-height:44px;padding:0 14px 0 40px!important;margin:0!important;border:1.5px solid #9fc4bc;border-radius:2px;background:#eef5f3;font-size:14px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:#2d333b!important;transition:background-color .15s,border-color .15s,color .15s}
.vh-form-col .vh-f-tipo .fusion-form-radio label::before{display:block!important;content:""!important;position:absolute!important;left:12px!important;top:50%!important;width:18px!important;height:18px!important;margin:-9px 0 0!important;transform:none!important;border:1.5px solid #2d333b!important;border-radius:50%!important;background:#fff!important}
.vh-form-col .vh-f-tipo .fusion-form-radio label::after{display:inline-block!important;content:"\2197"!important;position:static!important;order:-1;margin:0!important;transform:none!important;background:none!important;border:0!important;width:auto!important;height:auto!important;font-size:13px;color:#346767}
.vh-form-col .vh-f-tipo .fusion-form-radio:hover label{border-color:#2d333b}
.vh-form-col .vh-f-tipo .fusion-form-radio input:checked+label{background:#2d333b;border-color:#2d333b;color:#fff!important}
.vh-form-col .vh-f-tipo .fusion-form-radio input:checked+label::before{background:#92c5bc!important;border-color:#fff!important;box-shadow:inset 0 0 0 3px #2d333b}
.vh-form-col .vh-f-tipo .fusion-form-radio input:checked+label::after{color:#92c5bc}
.vh-form-col .vh-f-tipo .fusion-form-radio input:focus-visible+label{outline:3px solid #346767;outline-offset:2px}
/* pie: privacidad a la izquierda y botón a la derecha, bajo una línea */
.vh-form-col .fusion-form .fusion-form-consent-field{grid-column:1/2!important;align-self:stretch;display:flex;align-items:center;margin:0!important;padding-top:6px!important}
.vh-form-col .fusion-form .fusion-column-wrapper > .fusion-form-submit-field{grid-column:2/3!important;display:flex;align-items:center;justify-content:flex-end;margin:0!important;padding-top:6px!important}
.vh-form-col .fusion-form .fusion-form-submit-field button{width:auto!important}
.vh-form-col .vh-f-pie{grid-column:1/-1;margin:-6px 0 0!important;text-align:right;font-size:13px!important;color:#56606a!important}
/* casilla de privacidad (Avada la dibuja con label::before) */
.vh-form-col .fusion-form .fusion-form-consent-field .fusion-form-checkbox{display:block;position:relative}
.vh-form-col .fusion-form .fusion-form-consent-field label,.vh-form-col .fusion-form .fusion-text p{font-size:13px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;color:#2d333b!important;margin:0!important}
.vh-form-col .fusion-form .fusion-form-consent-field label{position:relative;padding-left:30px!important;display:block}
.vh-form-col .fusion-form .fusion-form-consent-field label::before{top:0!important;left:0!important;transform:none!important;width:18px!important;height:18px!important;border:1.5px solid #2d333b!important;border-radius:2px!important;background:#fff!important;margin:0!important}
.vh-form-col .fusion-form .fusion-form-consent-field label::after{display:none!important}
.vh-form-col .fusion-form .fusion-form-consent-field input:checked+label::before{background:#2d333b!important;border-color:#2d333b!important}
.vh-form-col .fusion-form .fusion-form-consent-field input:checked+label::after{display:block!important;content:""!important;position:absolute!important;top:3px!important;left:6.5px!important;width:5px!important;height:9px!important;border:solid #92c5bc!important;border-width:0 2px 2px 0!important;border-radius:0!important;background:none!important;transform:rotate(45deg)!important;margin:0!important}
.vh-form-col .fusion-form .fusion-form-consent-field input:focus-visible+label::before{outline:3px solid #346767;outline-offset:2px}
.vh-form-col .fusion-form .fusion-form-consent-field label a{position:relative;z-index:2;color:#2d333b!important;text-decoration:underline!important;text-decoration-color:#346767!important;text-decoration-thickness:1.5px!important;text-underline-offset:3px}
.vh-form-col .fusion-form .fusion-form-consent-field label a:hover{color:#346767!important}
.vh-form-col .fusion-form .form-submission-notices{padding:0!important}
.vh-form-col .fusion-form .form-submission-notices:empty{display:none}
@media (max-width:640px){
	.vh-form-col .fusion-form .fusion-column-wrapper{grid-template-columns:1fr;padding:0 20px 20px!important;margin:0 10px 10px 0!important;box-shadow:10px 10px 0 #5e978e!important}
	.vh-form-col .fusion-form .fusion-column-wrapper::before{margin:0 -20px 4px}
	.vh-form-col .fusion-form .fusion-form-consent-field,.vh-form-col .fusion-form .fusion-column-wrapper > .fusion-form-submit-field{grid-column:1/-1!important;justify-content:flex-start}
	.vh-form-col .fusion-form .fusion-column-wrapper > .fusion-form-submit-field{border-top:0;padding-top:0!important}
	.vh-form-col .vh-f-pie{text-align:left}
}

/* ---------- Movimiento reducido ---------- */
@media (prefers-reduced-motion:reduce){
	.vh-car .vh-slide,.vh-car .vh-slide.on,.vh-btn,.vr-fade,.vr-hc,.vr-hb .vr-wnd,.vr-ap,.vr-tv rect,.vh-rtabs button,.vh-cx-list button,.vh-cx-list button::before,.vh-form-col .vh-f-tipo .fusion-form-radio label::before{transition:none!important}
	.vh-hoja{animation:none}
}

/* elementos ocultos de momento (siguen en home-bloques.php; quita la clase vh-oculto para mostrarlos) */
.vh .vh-oculto{display:none!important}

/* H2 de la portada: mismo tamaño que en el resto de la web (Avada los calcula distinto en cada título) */
body.home #main .fusion-title h2.fusion-title-heading{font-size:38px!important;line-height:1.15!important}
@media (max-width:767px){body.home #main .fusion-title h2.fusion-title-heading{font-size:28px!important}}
/* Casos de éxito: enlace a la página del caso, al pie de su hoja */
.vh-hoja a.vh-hoja-link{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-top:1.5px solid #2d333b;background:#e9f3f1;color:#2d333b;font-weight:600;font-size:15.5px;text-decoration:none;transition:background-color .2s}
.vh-hoja a.vh-hoja-link:hover{background:#92c5bc}
.vh-hoja a.vh-hoja-link:focus-visible{outline:3px solid #2d333b;outline-offset:-3px}
.vh-hoja-link svg{width:14px;height:14px;flex:none;transition:transform .2s}
.vh-hoja-link:hover svg,.vh-hoja-link:focus-visible svg{transform:translateX(4px)}
@media (prefers-reduced-motion:reduce){.vh-hoja a.vh-hoja-link,.vh-hoja-link svg{transition:none}}
