/* SMG Consultoría - Recorrido deploy smgconsultoria V1.0 */
/* Estilos propios de la página de inicio */
@media (max-width:860px){.salto{display:none}}
@media (min-width:861px){.dos.ancho{grid-template-columns:1.6fr 1fr;gap:56px}.ancho .lead,.ancho .puente{max-width:none}}
.puente-gob .escena{height:420px}
/* Línea de tiempo: filas de igual alto para que los tres puntos queden equidistantes */
.timeline{position:relative;margin-top:50px;padding-left:56px;display:grid;grid-auto-rows:1fr;row-gap:46px}
.timeline::before{content:"";position:absolute;left:17px;top:6px;bottom:6px;width:2px;background:rgba(224,226,225,.25)}
.etapa{position:relative}
.etapa p{max-width:720px}
.etapa .punto{position:absolute;left:-49px;top:3px;width:20px;height:20px;border-radius:50%;border:2px solid var(--gris-claro);background:var(--azul)}
.etapa.visible .punto{background:var(--gris-claro);box-shadow:0 0 0 6px rgba(224,226,225,.15)}
.etapa h3{font-size:1.4rem;margin-bottom:6px}
.cita{font-size:clamp(1.3rem,2.4vw,1.9rem);font-weight:600;color:var(--profundo);border-left:3px solid var(--primario);padding-left:24px}
form{display:grid;gap:14px}
/* Campos con la misma forma redondeada que el botón */
input,textarea{font:inherit;padding:14px 22px;border-radius:999px;border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.12);color:#fff}
input::placeholder,textarea::placeholder{color:rgba(255,255,255,.9)}
textarea{min-height:110px;border-radius:24px}
form .btn{justify-content:center}
/* Respaldo: retrato */
.retrato-fig{width:100%;max-width:400px;justify-self:center}
.retrato{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:18px;box-shadow:0 24px 50px rgba(0,58,106,.18)}
.retrato-fig figcaption{margin-top:18px;padding-left:14px;border-left:4px solid var(--primario);line-height:1.35}
.retrato-fig figcaption b{display:block;font-size:1.15rem;font-weight:700;color:var(--profundo)}
.retrato-fig figcaption span{font-size:.92rem;color:var(--resalte)}
#respaldo .dos>*{min-width:0}
/* Respaldo: columna de cifras más ancha para que cada texto quede en dos líneas */
@media (min-width:861px){#respaldo .dos{grid-template-columns:1.8fr 1fr;gap:44px}#respaldo .cifras{gap:20px;grid-template-columns:1.2fr .9fr 1.05fr}.retrato-fig{max-width:360px}}
#respaldo .cifra span{display:block;font-size:.9rem;line-height:1.45;margin-top:6px}
.frase-final{font-size:clamp(2rem,5vw,3.6rem);font-weight:700;color:#fff;line-height:1.1;margin-bottom:18px}
@media (max-width:860px){.puente-gob .escena{height:260px}.pila{width:min(52vw,220px)}}

/* V1.6: la línea de arriba forma parte del título principal, con el mismo aspecto de antes */
.titulo-inicio{font-size:clamp(2.6rem,6.4vw,5rem);color:#fff;max-width:880px}
.titulo-inicio .kicker{display:block;font-size:.85rem;font-weight:400;letter-spacing:.1em;line-height:1.6;color:var(--gris);margin-bottom:16px}
/* Respaldo: modelo de trabajo con especialistas */
.red-especialistas{margin-top:34px;padding-left:14px;border-left:4px solid var(--primario);color:var(--tinta);font-size:1rem;line-height:1.5;max-width:640px}
/* Formulario: etiqueta visible arriba de cada campo, ejemplo adentro y aviso debajo */
.campo{display:grid}
form input:not([type=checkbox]){padding:12px 22px}
form textarea{min-height:96px}
form .campo>label:not(.acepto){font-size:.72rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#fff;margin:0 0 6px 20px}
.error{display:block;font-size:.82rem;font-weight:600;color:#fff;margin:6px 0 0 20px}
.error:empty{display:none}
form [aria-invalid="true"]{border:2px solid var(--ambar)}
.acepto{display:flex;gap:12px;align-items:flex-start;font-size:.86rem;line-height:1.45;color:#fff;cursor:pointer;padding:4px 0}
.acepto input[type=checkbox]{all:revert;width:20px;height:20px;flex:none;margin:1px 0 0 4px;accent-color:var(--ambar);cursor:pointer}
.acepto a,.form-estado a{text-decoration:underline}
.acepto .error{margin-left:36px}
.obligatorios{font-size:.8rem;color:#fff;margin:-4px 0 2px 4px}
.form-estado:empty{display:none}
