/* =====================================================================
   Portada v7 de Green Valley (automatización de procesos) · 2026-10-21 · Programador web · portada-gv5.css (16:30: formulario 6 bis, respaldo de Montserrat; sustituye a portada-gv4.css)
   Integración de la maqueta del Diseñador UX/UI (/workspace/diseno-webs/maqueta-gv-v7/estilos.css).
   Solo la carga index.html, DESPUÉS de main-gv3.css. Todo va acotado a body.pv7 y con clases v7-*,
   así que no afecta a soluciones, integraciones, agentes, nosotros, legales ni 404.
   Cabecera, menú móvil, aviso de cookies (opción B) y formulario son los REALES del sitio
   (main-gv3.css + main-gv4.js); aquí solo se ajustan para la portada.
   Paleta (manual GV): Naranja Tech #FF914D solo de acento · botón #c2410c (5,18:1) · Gris Carbón #3E4A59 ·
   Blanco Ártico #F8F9FA · Gris Niebla #E9ECEF.
   ===================================================================== */

/* ---------- Montserrat (SIL OFL 1.1, ver /assets/fonts/OFL-Montserrat.txt): subconjunto latin de la variable oficial ---------- */
@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/montserrat-latin-var.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2190-2193,U+2212}
/* Respaldo con métricas ajustadas (21/10/2026 16:30): mientras llega Montserrat, el texto se pinta con Arial (o Roboto en Android)
   escalada a la anchura media de Montserrat Bold, para que el H1 no cambie de alto al cambiar de fuente (CLS medido en la web real:
   0,075 en móvil y 0,178 en ordenador). Valores calculados con fontTools sobre los titulares de la portada:
   Montserrat 700 frente a Liberation Sans Bold (métricas de Arial) y frente a Roboto 700. */
@font-face{font-family:"Montserrat Respaldo";font-style:normal;font-weight:700 900;src:local("Arial Bold"),local("Arial-BoldMT"),local("Liberation Sans Bold"),local("LiberationSans-Bold"),local("Arimo Bold");size-adjust:109.55%;ascent-override:88.36%;descent-override:22.91%;line-gap-override:0%}
@font-face{font-family:"Montserrat Respaldo Roboto";font-style:normal;font-weight:700 900;src:local("Roboto Bold"),local("Roboto-Bold");size-adjust:116.48%;ascent-override:83.10%;descent-override:21.55%;line-gap-override:0%}

body.pv7{
 --v7-naranja:#FF914D;--v7-naranja-tinte:#FFF4EC;--v7-accion:#c2410c;--v7-accion-hover:#9a3412;
 --v7-carbon:#3E4A59;--v7-texto-2:#5a6270;--v7-artico:#F8F9FA;--v7-niebla:#E9ECEF;--v7-blanco:#FFFFFF;--v7-borde:#D5DAE0;
 --v7-radio-s:8px;--v7-radio-m:12px;--v7-sombra:0 8px 24px rgba(62,74,89,.08);
 --v7-f-tit:Montserrat,"Montserrat Respaldo","Montserrat Respaldo Roboto","Segoe UI",Roboto,Arial,sans-serif;
 --v7-f-txt:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
 font-size:16px;color:var(--v7-carbon);background:var(--v7-blanco)
}
html:has(body.pv7){scroll-padding-top:88px}
.pv7 main h1,.pv7 main h2,.pv7 main h3,.pv7 .v7-pie h2{font-family:var(--v7-f-tit);font-weight:700;color:var(--v7-carbon);overflow-wrap:break-word;hyphens:manual;margin:0}
.pv7 main a{color:var(--v7-accion)}
.pv7 main a:hover{color:var(--v7-accion-hover)}
.pv7 main :focus-visible,.pv7 .v7-pie :focus-visible{outline:3px solid var(--v7-accion);outline-offset:2px;border-radius:4px}
.v7-wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}
.v7-vh{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.v7-saltar{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.v7-saltar:focus{position:fixed;left:12px;top:12px;width:auto;height:auto;margin:0;clip:auto;z-index:2000;background:#fff;color:var(--v7-carbon);padding:12px 16px;border-radius:var(--v7-radio-s);box-shadow:var(--v7-sombra);font-weight:700;white-space:normal}
.v7-ancla{display:block;position:relative;top:0;height:0;overflow:hidden}

/* ---------- Etiquetas provisionales (SOLO VISTA PREVIA: quitar todas las .mq-nota antes de publicar) ---------- */
.mq-nota{display:inline-block;vertical-align:middle;font:600 11px/1.3 var(--v7-f-txt);letter-spacing:.02em;color:var(--v7-carbon);background:var(--v7-blanco);border:1px dashed var(--v7-texto-2);border-radius:999px;padding:1px 8px;margin:0 4px;white-space:nowrap}
.mq-nota.blk{display:table;margin:0 0 6px}
.v7-dark .mq-nota{background:var(--v7-blanco);color:var(--v7-carbon)}

/* ---------- Cabecera real: solo ajustes de la portada ---------- */
.pv7 .navbar{border-bottom:1px solid var(--v7-niebla)}
.pv7 .nav-links a{color:var(--v7-carbon)}
.pv7 .nav-container>.btn{min-height:44px;display:inline-flex;align-items:center;padding:0 16px;font-size:15px;font-weight:700}
@media (max-width:960px){.pv7 .nav-container>.btn{display:none}.pv7 .nav-toggle{margin-left:auto}}

/* ---------- Botones y enlaces ---------- */
.v7-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 28px;border-radius:var(--v7-radio-s);font:700 17px/1.2 var(--v7-f-txt);text-decoration:none;text-align:center;border:2px solid transparent;cursor:pointer;transition:background-color .15s,box-shadow .15s}
.pv7 main a.v7-btn-primario{background:var(--v7-accion);color:#fff;box-shadow:0 4px 14px rgba(194,65,12,.25)}
.pv7 main a.v7-btn-primario:hover{background:var(--v7-accion-hover);color:#fff;box-shadow:0 6px 18px rgba(154,52,18,.3)}
.pv7 main a.v7-btn-primario:focus-visible{outline:3px solid var(--v7-carbon);outline-offset:3px}
.pv7 main .v7-dark a.v7-btn-primario:focus-visible{outline-color:#fff}
.pv7 main a.v7-enlace-sec{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:600;color:var(--v7-carbon);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.pv7 main a.v7-enlace-sec:hover{color:var(--v7-accion-hover);text-decoration-thickness:2px}
.v7-flecha{display:inline-block;transition:transform .15s}
a:hover .v7-flecha{transform:translateX(3px)}

/* ---------- Primera pantalla (cabecera fija del sitio: 80 px) ---------- */
.v7-hero{position:relative;overflow:hidden;background:var(--v7-artico);padding:100px 0 28px}
.v7-hero::before{content:"";position:absolute;inset:0 0 auto auto;width:min(60vw,640px);height:100%;background:repeating-linear-gradient(-30deg,transparent 0 22px,rgba(255,145,77,.14) 22px 23px);-webkit-mask-image:linear-gradient(to left,#000 10%,transparent 85%);mask-image:linear-gradient(to left,#000 10%,transparent 85%);pointer-events:none}
.v7-hero-grid{position:relative;display:grid;gap:40px;align-items:center}
.pv7 .v7-hero h1{font-size:27px;line-height:1.2;letter-spacing:-.015em;margin-bottom:12px}
.v7-hero h1 .v7-acento{box-shadow:inset 0 -.32em 0 rgba(255,145,77,.35)}
.v7-hero .v7-sub{font-size:17px;line-height:1.5;color:var(--v7-texto-2);margin-bottom:18px;max-width:40em}
.v7-hero .v7-btn{width:100%}
.v7-garantia-s{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.45;color:var(--v7-texto-2);margin-top:12px;max-width:34em}
.v7-garantia-s svg{flex:0 0 18px;margin-top:2px}
.v7-hero .v7-enlace-sec{margin-top:2px}
.v7-esquema{display:none}
.v7-esquema svg{display:block;max-width:100%;height:auto}

/* ---------- Secciones ---------- */
.v7-sec{padding:56px 0}
.pv7 main .v7-sec-tit{font-size:26px;line-height:1.25;letter-spacing:-.01em;margin-bottom:24px;max-width:24em}
.v7-sec-tit::before{content:"";display:block;width:40px;height:4px;border-radius:2px;background:var(--v7-naranja);margin-bottom:14px}

/* Tarjetas */
.v7-tarjetas{display:grid;gap:16px}
.v7-tarjeta{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--v7-borde);border-radius:var(--v7-radio-m);padding:20px;box-shadow:var(--v7-sombra);transition:box-shadow .15s,transform .15s}
.v7-tarjeta::before{content:"";position:absolute;top:-1px;left:20px;width:48px;height:4px;border-radius:0 0 3px 3px;background:var(--v7-naranja)}
.v7-tarjeta:hover{box-shadow:0 12px 28px rgba(62,74,89,.12);transform:translateY(-2px)}
.v7-tarjeta .v7-ico{width:48px;height:48px;border-radius:10px;background:var(--v7-naranja-tinte);display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.pv7 .v7-tarjeta h3{font-size:19px;line-height:1.3;margin-bottom:10px;letter-spacing:normal}
.v7-tarjeta p{font-size:16px;color:var(--v7-texto-2);margin-bottom:10px}
.v7-tarjeta .v7-nota-demo{font-size:14px;font-style:italic}
.pv7 main .v7-tarjeta a.v7-enlace-sec{display:block;margin-top:auto;padding:10px 0;min-height:44px;line-height:1.5;color:var(--v7-accion)}
.pv7 main .v7-tarjeta a.v7-enlace-sec:hover{color:var(--v7-accion-hover)}

/* Cómo trabajamos */
.v7-pasos{list-style:none;display:grid;gap:16px;margin:0;padding:0}
.v7-paso{display:flex;gap:16px;align-items:flex-start;background:var(--v7-artico);border-radius:var(--v7-radio-m);padding:20px}
.v7-paso .v7-num{flex:none;width:44px;height:44px;border-radius:50%;background:#fff;border:3px solid var(--v7-naranja);display:flex;align-items:center;justify-content:center;font:800 20px/1 var(--v7-f-tit);color:var(--v7-carbon)}
.pv7 .v7-paso h3{font-size:18px;line-height:1.35;margin-bottom:4px;letter-spacing:normal}
.v7-paso p{color:var(--v7-texto-2)}
.v7-experiencia{margin-top:24px;font-weight:600;color:var(--v7-carbon)}

/* Garantía (bloque Gris Carbón) */
.v7-dark{background:var(--v7-carbon);color:#fff}
.pv7 .v7-dark h2{color:#fff}
.v7-garantia{position:relative;overflow:hidden}
.v7-garantia::after{content:"";position:absolute;right:-60px;bottom:-60px;width:260px;height:260px;border:24px solid rgba(255,145,77,.18);border-radius:40px;transform:rotate(30deg);pointer-events:none}
.v7-garantia .v7-in{position:relative;display:grid;gap:24px;align-items:center}
.v7-garantia blockquote{font:600 19px/1.5 var(--v7-f-txt);border-left:4px solid var(--v7-naranja);padding-left:18px;max-width:36em;margin:0}
.v7-garantia .v7-escudo{width:56px;height:56px;display:block}

/* Preguntas frecuentes (details/summary nativo: funciona sin JS) */
.v7-faq>*{max-width:820px}
.v7-faq details{background:#fff;border:1px solid var(--v7-borde);border-radius:var(--v7-radio-m);margin-bottom:12px;transition:border-color .15s}
.v7-faq details[open]{border-color:var(--v7-naranja);box-shadow:var(--v7-sombra)}
.v7-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:12px 20px;font:700 17px/1.35 var(--v7-f-tit);color:var(--v7-carbon);cursor:pointer;border-radius:var(--v7-radio-m)}
.v7-faq summary::-webkit-details-marker{display:none}
.v7-faq summary:hover{color:var(--v7-accion-hover)}
.v7-faq summary::after{content:"";flex:none;width:22px;height:22px;background:linear-gradient(var(--v7-accion),var(--v7-accion)) center/14px 2px no-repeat,linear-gradient(var(--v7-accion),var(--v7-accion)) center/2px 14px no-repeat}
.v7-faq details[open] summary::after{background:linear-gradient(var(--v7-accion),var(--v7-accion)) center/14px 2px no-repeat}
.v7-faq .v7-resp{padding:0 20px 18px;color:var(--v7-texto-2)}

/* Cierre y autoevaluación */
.v7-cierre{background:var(--v7-artico)}
.v7-cierre .v7-in>*{max-width:820px}
.v7-cierre .v7-entrada,.v7-contacto .v7-entrada{font-size:17px;color:var(--v7-texto-2);margin-bottom:20px}
.v7-hueco{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;min-height:200px;border:2px dashed var(--v7-texto-2);border-radius:var(--v7-radio-m);background:#fff;padding:24px;margin-bottom:20px;color:var(--v7-texto-2);font-weight:600}
.v7-cierre .v7-btn{width:100%}
.v7-alternativa{margin-top:16px;color:var(--v7-texto-2)}
.pv7 main .v7-alternativa a{font-weight:700;color:var(--v7-accion);display:inline-block;padding:11px 0;margin:-11px 0}
.v7-alternativa .v7-tel{white-space:nowrap}

/* Formulario de contacto (el real del sitio; se mantiene en la portada porque las demás páginas enlazan a /#contacto) */
.v7-contacto{background:#fff}
.v7-contacto .v7-in>*{max-width:820px}
.v7-contacto .contact-form{max-width:640px;background:#fff;border:1px solid var(--v7-borde);box-shadow:var(--v7-sombra);padding:24px}
.v7-contacto .form-group label{color:var(--v7-carbon)}
.v7-contacto .form-group input,.v7-contacto .form-group textarea{border-color:#8a94a3}
.v7-contacto .form-group input:focus,.v7-contacto .form-group textarea:focus{border-color:var(--v7-accion);box-shadow:0 0 0 3px rgba(194,65,12,.2)}

/* ---------- Pie claro (Gris Niebla; no hay versión en negativo del logo) ---------- */
.pv7 footer.v7-pie{background:var(--v7-niebla);color:var(--v7-carbon);padding:48px 0 24px;font-size:15px;border-top:0}
.v7-pie-grid{display:grid;gap:32px}
.v7-pie .v7-logo{display:inline-flex;align-items:center;min-height:44px}
.v7-pie .v7-logo img{height:44px;width:auto;display:block}
.pv7 .v7-pie h2{font:700 15px/1.3 var(--v7-f-tit);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.v7-pie ul{list-style:none;margin:0;padding:0}
.v7-pie ul a{display:inline-flex;align-items:center;min-height:44px;color:var(--v7-carbon);text-decoration:none}
.v7-pie ul a:hover{color:var(--v7-accion-hover);text-decoration:underline}
.v7-ecosistema{margin-top:12px;line-height:1.7;max-width:36em}
.v7-ecosistema a{color:var(--v7-accion-hover);font-weight:700;display:inline-block;padding:11px 0;margin:-11px 0;white-space:nowrap}
.v7-pie-legal{border-top:1px solid #C9CFD6;margin-top:32px;padding-top:20px;font-size:14px;color:var(--v7-carbon)}
.v7-pie-legal p{margin-bottom:6px}
.v7-pie-legal a{color:var(--v7-carbon);display:inline-block;padding:11px 2px;margin:-11px 0}
.v7-pie-legal a:hover{color:var(--v7-accion-hover)}
.v7-pie .fl-sep{color:var(--v7-texto-2)}
.pv7 footer.v7-pie a:focus-visible{outline:3px solid var(--v7-accion);outline-offset:2px}

/* ---------- Aviso de cookies real (opción B): el título pasa de h4 a h2 en la portada (orden de encabezados) con el mismo aspecto ---------- */
.pv7 .cookie-header h2{font-family:inherit;color:var(--color-dark);margin-bottom:.5rem;font-size:1.1rem;font-weight:700;line-height:1.2;letter-spacing:-.02em}
@media (max-width:768px){.pv7 .cookie-header h2{margin-bottom:.25rem;font-size:1rem}}
.pv7 .cookie-content p a{white-space:nowrap;padding:14px 0}

/* ---------- Tableta ---------- */
@media (min-width:600px){
 .v7-tarjetas{grid-template-columns:repeat(2,1fr)}
 .v7-tarjeta{padding:24px}.v7-tarjeta::before{left:24px}
 .v7-hero .v7-btn,.v7-cierre .v7-btn{width:auto}
 .v7-contacto .contact-form{padding:2.5rem}
}
/* ---------- Ordenador ---------- */
@media (min-width:961px){
 .v7-wrap{padding:0 32px}
 .v7-hero{padding:144px 0 72px}
 .v7-hero-grid{grid-template-columns:1.35fr .65fr;gap:48px}
 .pv7 .v7-hero h1{font-size:44px;line-height:1.14;margin-bottom:20px}
 .v7-hero .v7-sub{font-size:20px;margin-bottom:28px}
 .v7-esquema{display:block}
 .v7-sec{padding:88px 0}
 .pv7 main .v7-sec-tit{font-size:36px;margin-bottom:36px}
 .v7-tarjeta{padding:28px}
 .v7-pasos{grid-template-columns:repeat(3,1fr);gap:24px}
 .v7-paso{flex-direction:column;padding:28px}
 .v7-garantia .v7-in{grid-template-columns:auto 1fr auto;gap:40px}
 .v7-garantia blockquote{font-size:22px}
 .v7-pie-grid{grid-template-columns:1.6fr 1fr 1fr;gap:48px}
}
@media (max-width:768px){.v7-pie-legal .fl-sep{display:none}.v7-pie-legal .fl-item{display:block}}
@media (prefers-reduced-motion:reduce){.pv7 *{transition:none!important}html:has(body.pv7){scroll-behavior:auto}}

/* Objetivos de 44 px también en ordenador (menú) y en el enlace de la línea de privacidad del formulario */
@media (min-width:961px){.pv7 .nav-links a{display:inline-flex;align-items:center;min-height:44px}}
.pv7 .v7-contacto .form-privacy a{padding:12px 0;margin:-12px 0}

/* =====================================================================
   6 bis · Formulario #contacto como alternativa discreta (21/10/2026 16:25; Diseñador UX/UI y Copywriter)
   ===================================================================== */
.v7-sec.v7-contacto{background:#fff;padding:40px 0 56px}
.pv7 main .v7-contacto-tit{font-size:20px;line-height:1.3;letter-spacing:normal;margin-bottom:8px}
.v7-contacto .v7-entrada{font-size:16px;margin-bottom:16px}
.v7-contacto .contact-form{box-shadow:none}
/* unos 40 px menos encima de «Enviar»: antes 24 px del último campo + 32 px de .mt-4 = 56 px; ahora 16 px */
.v7-contacto .form-group:has(textarea){margin-bottom:16px}
/* «Enviar» secundario: contorno Gris Carbón, Inter, >= 44 px (la llamada principal sigue siendo la autoevaluación) */
.pv7 main .v7-btn-secundario{margin-top:0;width:auto;min-width:160px;min-height:48px;padding:0 28px;font:700 16px/1.2 var(--v7-f-txt);color:var(--v7-carbon);background:#fff;border:2px solid var(--v7-carbon);border-radius:var(--v7-radio-s);box-shadow:none;transform:none}
.pv7 main .v7-btn-secundario:hover{background:var(--v7-niebla);color:var(--v7-carbon);box-shadow:none;transform:none}
.pv7 main .v7-btn-secundario:focus-visible{outline:3px solid var(--v7-accion);outline-offset:3px}
.pv7 main .v7-btn-secundario:disabled{opacity:.7;cursor:not-allowed}
/* Aviso de éxito en Gris Carbón (9,02:1 sobre blanco) con check; el de error sigue en #b42318 (role=status, aria-live=polite) */
.pv7 .form-status{text-align:left}
.pv7 .form-status.is-success{color:var(--v7-carbon);display:flex;gap:8px;align-items:flex-start}
.pv7 .form-status.is-success:empty{display:none}
.pv7 .form-status.is-success::before{content:"";flex:0 0 20px;width:20px;height:20px;margin-top:2px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233E4A59' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M7.5 12.5l3 3 6-6'/%3E%3C/svg%3E") center/20px 20px no-repeat}
@media (min-width:961px){.pv7 main .v7-contacto-tit{font-size:24px}.v7-sec.v7-contacto{padding:56px 0 88px}}
