.contenedor-principal {
    font-family: 'Montserrat', 'Helvetica Neue', sans-serif;
    color: #1A1A1A;
    background: #ffffff;
    width: 100%;
}

.franja-bandera { display: flex; height: 6px; }
.franja-bandera-verde { flex: 1; background: #047734; }
.franja-bandera-amarillo { flex: 1; background: #FBD700; }
.franja-bandera-azul { flex: 1; background: #1D71B8; }

body { margin: 0; background: #ffffff; }

a { color: #1D71B8; }
a:hover { color: #134E80; }

.fld{display:flex;flex-direction:column;gap:6px;min-width:0}
.fld label{font-size:13px;font-weight:600;color:#333333}
.fld input,.fld select,.fld textarea{font:inherit;font-size:15px;padding:12px 14px;border:1.5px solid #C9CFCB;border-radius:10px;background:#ffffff;color:#1A1A1A;min-height:48px;box-sizing:border-box;width:100%}
.fld textarea{min-height:96px;resize:vertical}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:3px solid rgba(29,113,184,.25);border-color:#1D71B8}

button{font:inherit;cursor:pointer}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #FBD700;outline-offset:2px}

.t2 th,.t2 td{padding:11px 14px;border-top:1px solid #E4E7E5;font-variant-numeric:tabular-nums}
.t2 thead th{font-size:13px;font-weight:700;color:#134E80;text-align:right;border-top:0;line-height:1.3}
.t2 tbody th{text-align:left;font-weight:700;color:#1A1A1A}
.t2 tfoot th{text-align:left}
.t2 td{text-align:right;color:#333333}
.t2 td.nd{color:#9E9E9E}
.t2 tbody tr:nth-child(even){background:#FAFBF9}

.acordeon summary{list-style:none}
.acordeon summary::-webkit-details-marker{display:none}
.acordeon .flecha{transition:transform .2s}
.acordeon[open] .flecha{transform:rotate(180deg)}
.acordeon[open] .mas,.acordeon:not([open]) .menos{display:none}
.acordeon[open] summary{order:2}
.acordeon[open]{display:flex;flex-direction:column}