/* contacto.html · ajustes mínimos sobre sn-b2b.css */
.contacto-cab{padding-bottom:0}
.contacto-cuerpo{padding-top:clamp(32px,4vw,56px)}
.contacto{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start}
@media(max-width:1000px){.contacto{grid-template-columns:minmax(0,1fr)}}
.contacto__form>.pend--bloque{margin-top:14px}
.contacto__form>.pend--bloque a{color:var(--paper);border-bottom:1px solid var(--acento);white-space:normal;overflow-wrap:anywhere}

/* Resumen de errores */
.form__resumen{grid-column:1/-1;padding:16px 18px;border:1px solid var(--error);background:var(--ink-3)}
.form__resumen:focus{outline:2px solid var(--error);outline-offset:2px}
.form__resumen-t{font:600 16px/1.3 var(--body);color:var(--error)}
.form__resumen ul{margin:10px 0 0;padding-left:18px;list-style:disc;color:var(--error)}
.form__resumen li+li{margin-top:6px}
.form__resumen a{color:var(--paper);border-bottom:1px solid var(--error);font-size:15px}

/* La leyenda flotante del grupo ocupa toda la fila de la rejilla */
.form__grupo>legend{grid-column:1/-1}

/* Error del grupo «basta un medio de contacto» */
.form__grupo-error{grid-column:1/-1}
.form__grupo.is-error>.form__grupo-error{display:flex}

/* «Soy particular» y campo desactivado */
.campo .casilla--chica{font:400 14px/1.4 var(--body);color:var(--paper-2);cursor:pointer}
.campo .casilla--chica input{width:18px;height:18px;min-height:0;padding:0}
.campo input:disabled{opacity:.45;cursor:not-allowed}
.campo--casilla .casilla{font:400 15px/1.5 var(--body);color:var(--paper-2)}
.campo--casilla .casilla input{width:20px;height:20px;min-height:0;padding:0}
.campo--casilla.is-error .casilla input{outline:2px solid var(--error);outline-offset:2px}
.form__estado a{color:var(--paper)}

/* Canales laterales */
.canal{padding:clamp(18px,2.2vw,28px);border:1px solid var(--line);background:var(--ink-2)}
.canal+.canal{margin-top:16px}
.canal .ficha>div{grid-template-columns:minmax(84px,30%) minmax(0,1fr)}
.canal .ficha dd{overflow-wrap:anywhere}
.canal--guia{border-color:var(--line-2);border-top:1px solid var(--acento)}
.canal--guia .puntos li{padding:10px 0;font-size:15px;line-height:1.5}

/* Retícula del encabezado: queda detrás del texto y no llega al formulario */
.contacto-cab.fx-malla{padding-bottom:clamp(28px,3vw,40px)}
.contacto-cab .cab{margin-bottom:0}
