/* Asesorías Parra — estilos del sitio
   Paleta y tipografía tomadas del diseño original del cliente (zip del 14-10-2026);
   fondos beige reemplazados por blanco y gris frío. Motion según PM-01 (sección 3). */

@font-face{font-family:"Archivo";src:url("/fonts/archivo-latin-700.woff2") format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Archivo";src:url("/fonts/archivo-latin-800.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url("/fonts/source-sans-3-latin-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Source Sans 3";src:url("/fonts/source-sans-3-latin-600.woff2") format("woff2");font-weight:600;font-display:swap}

:root{
  --noche:#14222D;
  --noche-2:#1E3242;
  --noche-3:#0D1820;
  --naranjo:#F2A541;
  --naranjo-2:#F5B562;
  --oxido:#A34A0B;
  --tinta:#1B2A36;
  --texto:#33424E;
  --suave:#C9D2D9;
  --gris:#EEF2F5;
  --linea:#D9E0E6;
  --blanco:#FFFFFF;
  --verde-wsp:#25D366;
  --ancho:1200px;
  --radio:10px;
  --rapido:180ms;
  --medio:320ms;
  --curva:cubic-bezier(.2,.7,.2,1);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:18px;line-height:1.6;color:var(--tinta);background:var(--blanco)}
img,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:"Archivo",system-ui,sans-serif;margin:0;line-height:1.1;color:inherit}
p{margin:0}
:focus-visible{outline:3px solid var(--naranjo);outline-offset:3px}
.salto{position:absolute;left:-9999px;top:0;background:var(--naranjo);color:var(--noche);padding:10px 16px;z-index:100;font-weight:700}
.salto:focus{left:16px;top:16px}
section[id],[id].ancla{scroll-margin-top:76px}
.contenedor{max-width:var(--ancho);margin:0 auto;padding:0 24px}

/* Botones */
.boton{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:inherit;font-weight:700;font-size:17px;text-decoration:none;border-radius:6px;padding:14px 26px;border:2px solid transparent;cursor:pointer;line-height:1.2;transition:background var(--rapido),transform var(--rapido),box-shadow var(--rapido)}
.boton-primario{background:var(--naranjo);color:var(--noche)}
.boton-primario:hover{background:var(--naranjo-2);transform:translateY(-1px);box-shadow:0 6px 16px rgba(242,165,65,.28)}
.boton-borde{border-color:currentColor;color:var(--blanco)}
.boton-borde:hover{background:rgba(255,255,255,.08)}
.claro .boton-borde{color:var(--noche)}
.claro .boton-borde:hover{background:var(--gris)}
.boton svg{width:20px;height:20px;flex:none}

/* Cabecera */
.cabecera{background:var(--noche);color:var(--blanco);position:sticky;top:0;z-index:50;transition:box-shadow var(--medio)}
.cabecera .contenedor{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px;transition:padding var(--medio) var(--curva)}
.cabecera.compacta{box-shadow:0 4px 18px rgba(0,0,0,.28)}
.cabecera.compacta .contenedor{padding-top:8px;padding-bottom:8px}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--blanco)}
.marca svg{width:38px;height:38px;flex:none}
.marca span{font-family:"Archivo",sans-serif;font-weight:800;font-size:21px;letter-spacing:.02em;white-space:nowrap}
.menu{display:flex;align-items:center;gap:26px;font-size:16px;font-weight:600}
.menu a{text-decoration:none;color:var(--blanco);padding:8px 0;position:relative}
.menu a:not(.boton)::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--naranjo);transform:scaleX(0);transform-origin:left;transition:transform var(--medio) var(--curva)}
.menu a:not(.boton):hover::after,.menu a.activo::after{transform:scaleX(1)}
.menu .boton{padding:10px 18px;font-size:16px;color:var(--noche)}
.menu-movil{display:none;position:relative}
.menu-movil summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;font-weight:700;font-size:16px;padding:8px 12px;border:2px solid rgba(255,255,255,.4);border-radius:6px}
.menu-movil summary::-webkit-details-marker{display:none}
.menu-movil summary svg{width:20px;height:20px}
.menu-movil nav{position:absolute;right:0;top:calc(100% + 10px);background:var(--noche-2);border-radius:var(--radio);padding:10px;min-width:230px;display:flex;flex-direction:column;box-shadow:0 12px 30px rgba(0,0,0,.35)}
.menu-movil nav a{color:var(--blanco);text-decoration:none;padding:12px 14px;border-radius:6px;font-weight:600}
.menu-movil nav a:hover{background:rgba(255,255,255,.06)}
.menu-movil[open] nav{animation:desplegar var(--medio) var(--curva)}
@keyframes desplegar{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* Escudo que se dibuja (solo con JS y una vez por sesión) */
.intro .marca svg path{stroke-dasharray:130;stroke-dashoffset:130;animation:trazo .7s var(--curva) forwards}
.intro .marca svg path+path{stroke-dasharray:30;stroke-dashoffset:30;animation-delay:.55s;animation-duration:.35s}
@keyframes trazo{to{stroke-dashoffset:0}}

/* Portada */
.portada{background:var(--noche);color:var(--blanco);border-bottom:8px solid var(--naranjo);position:relative;overflow:hidden}
.portada::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;pointer-events:none}
.portada .contenedor{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;padding-top:88px;padding-bottom:100px}
.portada h1{font-weight:800;font-size:clamp(2.3rem,5vw,3.9rem);line-height:1.05}
.portada .bajada{font-size:20px;color:var(--suave);max-width:580px;margin-top:24px}
.portada .acciones{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.datos{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dato{background:var(--noche-2);border-radius:var(--radio);padding:26px}
.dato b{display:block;font-family:"Archivo",sans-serif;font-weight:800;font-size:42px;line-height:1;color:var(--naranjo);font-variant-numeric:tabular-nums}
.dato span{display:block;margin-top:8px;font-size:16px;color:var(--suave);line-height:1.4}
.dato-ancho{grid-column:span 2}
.dato-ancho strong{display:block;font-family:"Archivo",sans-serif;font-weight:700;font-size:21px;color:var(--blanco)}
.dato a{color:var(--naranjo);font-weight:600}

/* Foto de portada y cifras */
.portada-visual{display:flex;flex-direction:column;gap:16px}
.foto-portada{margin:0;position:relative;border-radius:14px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.35);aspect-ratio:4/3;background:var(--noche-2)}
.foto-portada img{width:100%;height:100%;object-fit:cover;object-position:70% 30%}
.foto-portada figcaption{position:absolute;left:12px;bottom:12px;right:12px;background:rgba(13,24,32,.82);color:var(--blanco);font-size:14px;font-weight:600;padding:8px 12px;border-radius:8px;border-left:4px solid var(--naranjo)}
.datos-3{grid-template-columns:repeat(3,1fr);gap:12px}
.datos-3 .dato{padding:18px}
.datos-3 .dato b{font-size:34px}
.datos-3 .dato span{font-size:15px}

/* Trayectoria */
.trayectoria-seccion{background:var(--noche);color:var(--blanco)}
.trayectoria{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hitos{list-style:none;padding:0;margin:32px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hitos li{display:flex;gap:14px;align-items:flex-start;background:var(--noche-2);border-radius:var(--radio);padding:16px 18px}
.hitos svg{width:26px;height:26px;stroke:var(--naranjo);flex:none;margin-top:2px}
.hitos strong{display:block;font-family:"Archivo",sans-serif;font-size:17px;line-height:1.25}
.hitos span{display:block;color:var(--suave);font-size:15px;margin-top:2px}
.galeria{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.galeria figure,.foto-evento{margin:0;border-radius:12px;overflow:hidden;aspect-ratio:3/4;background:var(--noche-2)}
.galeria figure:nth-child(even){transform:translateY(28px)}
.js .galeria figure.revelar:nth-child(even){transform:translateY(42px)}
.js .galeria figure.revelar.visible:nth-child(even){transform:translateY(28px)}
.galeria img,.foto-evento img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--curva)}
.galeria figure:hover img{transform:scale(1.04)}
.foto-evento{max-width:420px;justify-self:center;width:100%}

/* Portada interior (servicios, edificios, bitácora) */
.portada-interior .contenedor{grid-template-columns:1fr;padding-top:56px;padding-bottom:64px;gap:0;max-width:var(--ancho)}
.portada-interior h1{font-size:clamp(2rem,4.4vw,3.2rem);max-width:900px}
.migas{font-size:15px;color:var(--suave);margin-bottom:18px}
.migas a{color:var(--suave)}
.migas a:hover{color:var(--naranjo)}

/* Franja de confianza */
.franja{background:var(--noche-2);color:var(--suave);font-size:16px}
.franja ul{list-style:none;margin:0;padding:18px 0;display:flex;flex-wrap:wrap;gap:12px 36px;justify-content:center}
.franja li{display:flex;align-items:center;gap:10px}
.franja svg{width:20px;height:20px;stroke:var(--naranjo);flex:none}

/* Secciones */
.seccion{padding:88px 0}
.seccion-gris{background:var(--gris)}
.titulo-seccion{font-weight:800;font-size:clamp(1.9rem,3.4vw,2.7rem);max-width:780px}
.intro-seccion{color:var(--texto);max-width:720px;margin-top:14px}
.oscuro .intro-seccion{color:var(--suave)}

/* Tarjetas genéricas con enlace */
.tarjetas{display:grid;gap:20px;margin-top:44px}
.tarjetas-3{grid-template-columns:repeat(3,1fr)}
.tarjetas-4{grid-template-columns:repeat(4,1fr)}
.tarjeta{position:relative;background:var(--blanco);border:1px solid var(--linea);border-radius:12px;padding:30px;display:flex;flex-direction:column;gap:12px;transition:transform var(--medio) var(--curva),box-shadow var(--medio),border-color var(--medio)}
.tarjeta svg.icono{width:40px;height:40px;stroke:var(--oxido);transition:stroke var(--medio)}
.tarjeta h3{font-size:21px;font-weight:700}
.tarjeta p{color:var(--texto);font-size:17px}
.tarjeta .mas{margin-top:auto;padding-top:6px;font-weight:700;font-size:16px;color:var(--oxido);text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.tarjeta .mas::before{content:"";position:absolute;inset:0;border-radius:12px}
.tarjeta .mas span{transition:transform var(--medio) var(--curva)}
.tarjeta:hover,.tarjeta:focus-within{transform:translateY(-4px);box-shadow:0 14px 30px rgba(20,34,45,.10);border-color:#C5D0D9}
.tarjeta:hover svg.icono,.tarjeta:focus-within svg.icono{stroke:#D9861F}
.tarjeta:hover .mas span{transform:translateX(4px)}
.tarjeta-oscura{background:var(--noche);color:var(--blanco);border-color:var(--noche)}
.tarjeta-oscura p{color:var(--suave)}
.tarjeta-oscura svg.icono{stroke:var(--naranjo)}
.tarjeta-oscura .mas{color:var(--naranjo)}

/* Nosotros */
.nosotros{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.nosotros .texto{display:flex;flex-direction:column;gap:18px;color:var(--texto)}
.proposito{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:48px}
.proposito article{background:var(--blanco);border-radius:12px;padding:30px;border-top:5px solid var(--naranjo)}
.proposito article:last-child{border-top-color:var(--noche)}
.proposito h3{font-size:22px;font-weight:800;margin-bottom:10px}
.proposito p{color:var(--texto);font-size:17px}

/* Cómo trabajamos, con línea de progreso */
.pasos{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:44px;counter-reset:paso;list-style:none;padding:0}
.pasos::before,.pasos::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--linea)}
.pasos::after{background:var(--naranjo);transform-origin:left;transform:scaleX(var(--progreso,1))}
.pasos li{display:flex;flex-direction:column;gap:10px;padding-top:22px}
.pasos li::before{counter-increment:paso;content:"0" counter(paso);font-family:"Archivo",sans-serif;font-weight:800;font-size:20px;color:var(--oxido)}
.pasos h3{font-size:21px;font-weight:700}
.pasos p{color:var(--texto);font-size:17px}

/* Lista con ticket */
.lista-check{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:14px 32px}
.lista-check li{position:relative;padding-left:34px;color:var(--texto)}
.lista-check li::before{content:"";position:absolute;left:0;top:4px;width:22px;height:22px;border-radius:50%;background:var(--naranjo) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314222D' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/14px no-repeat}
.lista-check strong{color:var(--tinta)}

/* Dos columnas de texto */
.doble{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.recuadro{background:var(--gris);border-left:5px solid var(--naranjo);border-radius:0 12px 12px 0;padding:26px 28px}
.recuadro h3{font-size:20px;margin-bottom:8px}
.recuadro p{color:var(--texto)}

/* Preguntas frecuentes */
.faq{margin-top:36px;display:flex;flex-direction:column;gap:12px;max-width:880px}
.faq details{background:var(--blanco);border:1px solid var(--linea);border-radius:10px;transition:border-color var(--medio)}
.faq details[open]{border-color:#C5D0D9}
.faq summary{cursor:pointer;list-style:none;padding:20px 56px 20px 22px;font-weight:700;font-size:18px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:22px;top:50%;width:12px;height:12px;border-right:2.5px solid var(--oxido);border-bottom:2.5px solid var(--oxido);transform:translateY(-70%) rotate(45deg);transition:transform var(--medio) var(--curva)}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq .respuesta{padding:0 22px 20px;color:var(--texto)}
.faq details[open] .respuesta{animation:desplegar var(--medio) var(--curva)}

/* Llamado final */
.llamado{background:var(--noche);color:var(--blanco);border-radius:16px;padding:44px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.llamado h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;max-width:640px}
.llamado p,.prosa .llamado p{color:var(--suave);margin-top:10px;max-width:640px}
.prosa .llamado h2{margin:0}

/* Bitácora */
.articulos{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}
.articulo-tarjeta .categoria{font-size:14px;font-weight:700;color:var(--oxido);letter-spacing:.02em}
.articulo-tarjeta h3{font-size:20px;line-height:1.25}
.articulo-tarjeta time{font-size:14px;color:#5E6E7A}
.lectura{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:56px;align-items:start}
.prosa{max-width:760px}
.prosa .resumen{font-size:20px;color:var(--tinta);background:var(--gris);border-radius:12px;padding:22px 26px;margin-bottom:32px}
.prosa p,.prosa li{color:var(--texto)}
.prosa p+p{margin-top:16px}
.prosa h2{font-size:clamp(1.5rem,2.6vw,1.9rem);font-weight:800;margin:44px 0 14px;scroll-margin-top:84px}
.prosa h3{font-size:21px;font-weight:700;margin:28px 0 10px}
.prosa ul,.prosa ol{padding-left:24px;margin:14px 0}
.prosa li+li{margin-top:6px}
.prosa a{color:var(--oxido);font-weight:600}
.prosa table{width:100%;border-collapse:collapse;margin:22px 0;font-size:16px;display:block;overflow-x:auto}
.prosa th{background:var(--noche);color:var(--blanco);text-align:left;font-weight:600;padding:10px 12px}
.prosa td{border-bottom:1px solid var(--linea);padding:10px 12px;vertical-align:top;color:var(--texto)}
.prosa tr:nth-child(even) td{background:#F7F9FA}
.consejo{margin:36px 0;background:var(--noche);color:var(--blanco);border-radius:12px;padding:26px 28px;display:flex;gap:18px}
.consejo svg{width:34px;height:34px;stroke:var(--naranjo);flex:none}
.consejo h3{color:var(--naranjo);font-size:18px;margin:0 0 6px}
.consejo p{color:var(--suave)}
.indice{position:sticky;top:96px;font-size:15px;border-left:2px solid var(--linea);padding-left:18px}
.indice strong{display:block;font-family:"Archivo",sans-serif;font-size:16px;margin-bottom:10px}
.indice a{display:block;text-decoration:none;color:var(--texto);padding:5px 0;transition:color var(--rapido)}
.indice a:hover,.indice a.activo{color:var(--oxido);font-weight:600}
.autor{margin-top:40px;padding-top:24px;border-top:1px solid var(--linea);font-size:16px;color:var(--texto)}
.fuentes{font-size:15px}
.fuentes li{color:var(--texto)}
.barra-lectura{position:fixed;left:0;right:0;top:0;height:3px;background:var(--naranjo);transform-origin:left;transform:scaleX(0);z-index:70}

/* Contacto */
.contacto{background:var(--noche);color:var(--blanco)}
.contacto .contenedor{display:grid;grid-template-columns:1fr 1fr;gap:56px}
.contacto .intro-seccion{color:var(--suave)}
.medios{list-style:none;padding:0;margin:28px 0 0;display:flex;flex-direction:column;gap:12px;font-size:17px}
.medios a{color:var(--naranjo);font-weight:600}
.contacto .acciones{margin-top:28px}
.formulario{background:var(--noche-2);border-radius:12px;padding:32px;display:flex;flex-direction:column;gap:18px;position:relative}
.formulario label{display:flex;flex-direction:column;gap:6px;font-size:15px;font-weight:600}
.formulario input,.formulario select,.formulario textarea{font:inherit;font-weight:400;font-size:17px;padding:12px 14px;border-radius:6px;border:1px solid #50657A;background:var(--noche);color:var(--blanco);width:100%;transition:border-color var(--rapido),box-shadow var(--rapido)}
.formulario input:focus,.formulario select:focus,.formulario textarea:focus{outline:none;border-color:var(--naranjo);box-shadow:0 0 0 3px rgba(242,165,65,.25)}
.formulario .error-campo{display:none;font-size:14px;font-weight:400;color:#FFB4A6}
.formulario label.invalido input,.formulario label.invalido textarea{border-color:#FF8A73}
.formulario label.invalido .error-campo{display:block;animation:desplegar var(--rapido) ease}
.formulario textarea{resize:vertical;min-height:120px}
.formulario .fila{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.formulario .aviso{font-size:14px;font-weight:400;color:var(--suave)}
.formulario .aviso a{color:var(--naranjo)}
.formulario button{align-self:flex-start;border:0;min-width:190px}
.formulario button[disabled]{opacity:.75;cursor:progress}
.exito{display:none;flex-direction:column;align-items:flex-start;gap:14px}
.formulario.enviado > :not(.exito){display:none}
.formulario.enviado .exito{display:flex;animation:desplegar var(--medio) var(--curva)}
.exito svg{width:56px;height:56px}
.exito circle{stroke-dasharray:160;stroke-dashoffset:160;animation:trazo .6s var(--curva) forwards}
.exito path{stroke-dasharray:40;stroke-dashoffset:40;animation:trazo .35s .45s var(--curva) forwards}
.exito h3{font-size:24px}
.exito p{color:var(--suave)}
.oculto{position:absolute;left:-9999px}

/* Pie */
.pie{background:var(--noche-3);color:#A9B6C1;font-size:15px}
.pie .columnas{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;padding-top:56px;padding-bottom:36px}
.pie h2{font-family:"Archivo",sans-serif;font-size:16px;color:var(--blanco);margin-bottom:12px}
.pie ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.pie a{color:#A9B6C1;text-decoration:none}
.pie a:hover{color:var(--naranjo)}
.pie .marca{margin-bottom:14px}
.pie .final{border-top:1px solid rgba(255,255,255,.08);padding-top:20px;padding-bottom:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px}

/* WhatsApp flotante (escritorio) */
.whatsapp{position:fixed;right:20px;bottom:20px;z-index:60;width:60px;height:60px;border-radius:50%;background:var(--verde-wsp);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.25);transition:transform var(--medio) var(--curva),opacity var(--medio)}
.whatsapp svg{width:32px;height:32px}
.whatsapp:hover{transform:scale(1.06)}
.js .whatsapp.escondido{opacity:0;transform:translateY(16px) scale(.9);pointer-events:none}
.burbuja{position:fixed;right:92px;bottom:30px;z-index:60;background:var(--blanco);color:var(--tinta);border-radius:12px;padding:12px 38px 12px 16px;box-shadow:0 10px 26px rgba(0,0,0,.18);font-weight:600;font-size:16px;max-width:240px;opacity:0;transform:translateX(10px);pointer-events:none;transition:opacity var(--medio),transform var(--medio) var(--curva)}
.burbuja.visible{opacity:1;transform:none;pointer-events:auto}
.burbuja a{color:var(--tinta);text-decoration:none}
.burbuja button{position:absolute;right:6px;top:6px;border:0;background:none;font-size:18px;line-height:1;cursor:pointer;color:#5E6E7A;padding:4px}

/* Barra de contacto fija (celular) */
.barra-movil{display:none}

/* Aparición al hacer scroll (solo con JS) */
.js .revelar{opacity:0;transform:translateY(14px);transition:opacity .45s var(--curva),transform .45s var(--curva);transition-delay:calc(var(--i,0) * 70ms)}
.js .revelar.visible{opacity:1;transform:none}

/* Páginas simples (privacidad, gracias, 404) */
.pagina{padding:72px 0 96px}
.pagina .contenedor{max-width:820px}
.pagina h1{font-size:clamp(2rem,4vw,2.8rem);font-weight:800;margin-bottom:20px}
.pagina h2{font-size:22px;font-weight:700;margin:36px 0 10px}
.pagina p,.pagina li{color:var(--texto)}
.pagina p+p{margin-top:12px}
.pagina ul{padding-left:22px}
.pagina .acciones{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.pagina .boton-borde{color:var(--noche)}

/* Responsivo */
@media (max-width:1080px){
  .tarjetas-4{grid-template-columns:1fr 1fr}
  .pie .columnas{grid-template-columns:1fr 1fr}
  .lectura{grid-template-columns:minmax(0,1fr)}
  .indice{display:none}
}
@media (max-width:980px){
  .portada .contenedor,.nosotros,.contacto .contenedor,.doble,.trayectoria{grid-template-columns:1fr}
  .tarjetas-3,.articulos{grid-template-columns:1fr 1fr}
  .portada .contenedor{padding-top:64px;padding-bottom:72px;gap:40px}
  .menu{display:none}
  .menu-movil{display:block}
}
@media (max-width:720px){
  body{font-size:17px;padding-bottom:68px}
  .marca span{font-size:18px}
  .marca svg{width:32px;height:32px}
  .tarjetas-3,.tarjetas-4,.articulos,.pasos,.proposito,.lista-check,.hitos{grid-template-columns:1fr}
  .datos-3 .dato{padding:14px}
  .datos-3 .dato b{font-size:28px}
  .datos-3 .dato span{font-size:14px}
  .galeria figure:nth-child(even),.js .galeria figure.revelar.visible:nth-child(even){transform:none}
  .pasos::before,.pasos::after{display:none}
  .pasos li{border-top:3px solid var(--linea)}
  .seccion{padding:64px 0}
  .portada .bajada{font-size:18px}
  .formulario{padding:24px}
  .formulario .fila{grid-template-columns:1fr}
  .contenedor{padding:0 16px}
  .datos{gap:12px}
  .dato{padding:20px}
  .dato b{font-size:34px}
  .llamado{padding:30px 24px}
  .pie .columnas{grid-template-columns:1fr}
  .whatsapp,.burbuja{display:none}
  .barra-movil{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--noche);box-shadow:0 -4px 16px rgba(0,0,0,.25);padding:8px;gap:8px}
  .barra-movil a{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:8px;font-weight:700;text-decoration:none;font-size:16px}
  .barra-movil a svg{width:20px;height:20px}
  .barra-movil .llamar{background:var(--noche-2);color:var(--blanco)}
  .barra-movil .wsp{background:var(--verde-wsp);color:#073B1C}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .revelar{opacity:1;transform:none}
  .intro .marca svg path{stroke-dashoffset:0}
}

/* Retrato en «Nosotros» */
.retrato{margin:6px 0 0;display:flex;gap:18px;align-items:center;background:var(--gris);border-radius:12px;padding:14px}
.retrato img{width:96px;height:112px;object-fit:cover;border-radius:10px;flex:none}
.retrato figcaption{font-size:15px;color:var(--texto);line-height:1.45}
.retrato strong{display:block;font-family:"Archivo",sans-serif;font-size:18px;color:var(--tinta)}
