/* Presentación de la calculadora de aportes, incluidos estados y ajustes responsivos. */
.calculator-page{background:#f4f7fb;min-height:65vh}.calculator-intro{padding:52px 0 34px;background:linear-gradient(125deg,#e8f4ff 0%,#f7fbff 55%,#e8f3ff 100%);border-bottom:1px solid #dce8f4}.calculator-intro-inner{max-width:1100px}.calculator-intro .eyebrow{margin:0 0 9px;color:#0a6ab0;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.calculator-intro h1{max-width:800px;margin:0;color:#062b53;font:800 clamp(32px,4.6vw,52px)/1.12 Manrope,sans-serif;letter-spacing:-.045em}.calculator-intro-inner>p:not(.eyebrow){max-width:720px;margin:14px 0 12px;color:#52657c;font-size:15px;line-height:1.7}.calculator-back{color:#075da2;font-size:13px;font-weight:800}.calculator-section{padding:35px 0 52px}.calculator-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.8fr);gap:22px;align-items:start}.calculator-card,.calculator-result{border:1px solid #dce5ef;border-radius:18px;background:#fff;box-shadow:0 14px 38px #0b315310}.calculator-card{padding:clamp(20px,3vw,34px)}.calculator-card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.calculator-card-heading .eyebrow{margin:0 0 5px;color:#0a6ab0;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.calculator-card-heading h2{margin:0;color:#092d54;font:750 23px/1.2 Manrope,sans-serif;letter-spacing:-.025em}.calculator-badge{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:#ebf8f2;color:#18704c;font-size:11px;font-weight:800;white-space:nowrap}.calculator-badge span{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#168253;color:white}.calculator-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.calculator-field{display:grid;align-content:start;gap:8px;color:#243a53;font-size:13px;font-weight:750}.calculator-field>small{color:#718198;font-size:11px;font-weight:500;line-height:1.45}.calculator-field input,.calculator-field select{width:100%;min-height:48px;padding:11px 13px;border:1px solid #cbd7e4;border-radius:9px;background:#fff;color:#17324f;font:600 14px Manrope,Arial,sans-serif;outline:none}.calculator-field input:focus,.calculator-field select:focus{border-color:#1486c8;box-shadow:0 0 0 3px #1486c822}.input-with-prefix,.input-with-suffix{display:flex;align-items:center;min-height:48px;border:1px solid #cbd7e4;border-radius:9px;background:#fff;color:#63778f}.input-with-prefix:focus-within,.input-with-suffix:focus-within{border-color:#1486c8;box-shadow:0 0 0 3px #1486c822}.input-with-prefix>span,.input-with-suffix>span{padding:0 12px;color:#52657c;font-weight:700}.input-with-prefix input,.input-with-suffix input{min-width:0;border:0;box-shadow:none!important}.input-with-prefix input{padding-left:0}.input-with-suffix input{padding-right:0}.calculator-options{margin:25px 0 0;padding:20px 0 0;border:0;border-top:1px solid #e5ebf2}.calculator-options legend{padding:0;color:#17324f;font-size:14px;font-weight:800}.calculator-options>p{margin:4px 0 14px;color:#718198;font-size:11px}.calculator-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.calculator-check{display:flex;align-items:center;gap:11px;min-height:58px;padding:10px 12px;border:1px solid #dce5ef;border-radius:10px;background:#fbfdff;cursor:pointer;transition:border-color .18s,background .18s}.calculator-check:hover{border-color:#82bde0;background:#f3faff}.calculator-check:has(input:checked){border-color:#4f9fce;background:#eff8ff}.calculator-check input{width:18px;height:18px;margin:0;accent-color:#087db8;flex:none}.calculator-check>span{display:grid;gap:2px;color:#29435d;font-size:12px}.calculator-check b{font-weight:750}.calculator-check small{color:#718198;font-size:10px}.calculator-error{margin:16px 0 0;padding:11px 13px;border-radius:8px;background:#fff2f1;color:#a12620;font-size:12px;font-weight:700}.calculator-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.calculator-actions .btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 17px;font-size:12px}.calculator-actions .btn.primary{background:#0875b3;color:#fff}.calculator-actions .btn.primary:hover{background:#075d92}.calculator-actions .btn.outline{border-color:#bfd1e2;color:#174369}.calculator-rounding{display:flex;gap:8px;margin:15px 0 0;color:#708198;font-size:10px;line-height:1.5}.calculator-rounding>span{color:#0875b3}.calculator-result{position:sticky;top:20px;overflow:hidden;padding:25px;background:linear-gradient(150deg,#062b53 0%,#074f87 100%);border:0;color:white;box-shadow:0 20px 45px #082d5040}.result-topline{display:flex;align-items:center;gap:9px;color:#cfe9fb;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.result-icon{display:grid;place-items:center;width:33px;height:33px;border-radius:10px;background:#ffffff1b;color:#fff;font:800 18px Manrope}.result-label{margin:25px 0 5px;color:#d0e2f1;font-size:12px}.result-total{display:block;overflow-wrap:anywhere;color:#fff;font:800 clamp(31px,3.2vw,43px)/1.15 Manrope,sans-serif;letter-spacing:-.045em}.result-details{display:grid;gap:0;margin-top:23px;border-top:1px solid #ffffff35}.result-details>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #ffffff25;font-size:11px}.result-details span{color:#c6d9e9}.result-details strong{text-align:right;color:#fff}.result-note{margin:18px 0;color:#d5e5f2;font-size:10px;line-height:1.65}.result-contact{display:flex;justify-content:center;align-items:center;min-height:43px;padding:9px 12px;border-radius:8px;background:#fff;color:#075186;font-size:11px;font-weight:800;text-align:center}.result-contact:hover{background:#dff3ff}.calculator-disclaimer{max-width:850px;margin:16px auto 0;color:#78879a;font-size:10px;line-height:1.6;text-align:center}
@media(max-width:850px){.calculator-layout{grid-template-columns:minmax(0,1fr) minmax(260px,.78fr);gap:15px}.calculator-result{padding:21px}.calculator-card{padding:22px}.calculator-checks{grid-template-columns:1fr}}
@media(max-width:700px){.calculator-intro{padding:39px 0 26px}.calculator-intro h1{font-size:clamp(30px,8.5vw,41px)}.calculator-intro-inner>p:not(.eyebrow){font-size:13px}.calculator-section{padding:20px 0 36px}.calculator-layout{grid-template-columns:minmax(0,1fr)}.calculator-result{position:static;grid-row:2;padding:20px}.result-label{margin-top:18px}.result-total{font-size:36px}.result-details{margin-top:16px}.calculator-card{padding:19px}.calculator-card-heading{align-items:flex-start;margin-bottom:21px}.calculator-card-heading h2{font-size:20px}.calculator-badge{padding:7px 8px;font-size:9px}.calculator-fields{grid-template-columns:minmax(0,1fr);gap:16px}.calculator-checks{grid-template-columns:1fr 1fr;gap:7px}.calculator-check{min-height:60px;padding:8px}.calculator-check>span{font-size:11px}.calculator-actions{flex-direction:column}.calculator-actions .btn{width:100%;min-height:48px}.calculator-disclaimer{text-align:left}}
@media(max-width:390px){.calculator-checks{grid-template-columns:1fr}.calculator-card-heading{flex-direction:column}.result-total{font-size:32px}}
@media print{.topbar,.header,.site-footer,.calculator-intro,.calculator-card,.result-contact,.calculator-disclaimer{display:none!important}.calculator-page,.calculator-section{min-height:0;padding:0;background:#fff}.calculator-layout{display:block;width:100%;max-width:700px}.calculator-result{position:static;padding:24px;background:#fff!important;color:#102d49;border:1px solid #9eacba;box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}.result-topline,.result-label,.result-total,.result-details strong,.result-details span,.result-note{color:#102d49}.result-details{border-color:#bac5d0}.result-details>div{border-color:#d9dfe6}.result-note{font-size:12px}}

/* Perfiles agrupados, aviso de elegibilidad y estado sin resultados antes del cálculo. */
.calculator-pension-note{margin:20px 0 0;padding:13px 15px;border-left:3px solid #e7a92b;border-radius:0 9px 9px 0;background:#fff8e7;color:#67501e;font-size:11px;line-height:1.6}.calculator-pension-note strong{color:#4c3a13}
.result-prompt{display:flex;align-items:center;gap:13px;min-height:145px;margin-top:16px;padding:18px;border:1px solid #ffffff38;border-radius:12px;background:#ffffff0d;color:#e1effa}.result-prompt>span{display:grid;place-items:center;flex:none;width:38px;height:38px;border:1px solid #ffffff65;border-radius:50%;font-size:21px}.result-prompt p{margin:0;font-size:12px;line-height:1.65}.result-prompt strong{color:#fff}
.result-risk-reminder{margin:15px 0 0;padding:12px;border:1px solid #ffe2a0;border-radius:9px;background:#fff5d9;color:#654a12;font-size:11px;line-height:1.55}.result-risk-reminder strong{color:#4a3507}
@media(max-width:700px){.calculator-pension-note{font-size:10px}.result-prompt{min-height:95px;padding:13px}.result-risk-reminder{font-size:10px}}

/* Compactación exclusiva del área de cálculo; cabecera interior y componentes compartidos intactos. */


.calculator-page .calculator-layout{gap:16px}
.calculator-page .calculator-card{padding:20px}
.calculator-page .calculator-card-heading{margin-bottom:16px}
.calculator-page .calculator-fields{gap:12px}
.calculator-page .calculator-options{margin-top:18px;padding-top:14px}
.calculator-page .calculator-options > p{margin-bottom:10px}
.calculator-page .calculator-check{min-height:52px;padding:8px 10px}
.calculator-page .calculator-pension-note{margin-top:14px;padding:10px 12px}
.calculator-page .calculator-actions{margin-top:16px}
.calculator-page .calculator-rounding{margin-top:10px}
.calculator-page .calculator-result{padding:20px}
.calculator-page .result-label{margin-top:18px}
.calculator-page .result-details{margin-top:16px}
.calculator-page .calculator-disclaimer{margin-top:12px}
@media(max-width:700px){


 .calculator-page .calculator-layout{gap:12px}
 .calculator-page .calculator-card{grid-row:1;padding:16px 14px}
 .calculator-page .calculator-result{grid-row:2;position:static;padding:18px 14px}
 .calculator-page .calculator-card-heading{margin-bottom:14px}
 .calculator-page .calculator-fields{gap:12px}
 .calculator-page .calculator-options{margin-top:14px;padding-top:12px}
 .calculator-page .calculator-check{min-height:54px;padding:8px}
}
@media print{.calculator-page > .breadcrumbs + .calculator-section{padding:0}.calculator-page .calculator-layout{width:100%}}

/* Cabecera funcional compacta: solo esta página, sin modificar fórmulas ni resultados. */
.calculator-page .calculator-intro-compact{padding:18px 0 12px;background:#f1f6fc}
.calculator-page .calculator-intro-compact h1{margin:0;font-size:clamp(24px,2.6vw,30px);line-height:1.2;letter-spacing:-.03em}
.calculator-page .calculator-intro-compact p{margin:6px 0 0;color:#53647a;font-size:13px;line-height:1.5}
.calculator-page>.breadcrumbs{min-height:30px}
.calculator-page>.calculator-section{padding-top:14px;padding-bottom:24px}
.calculator-page>.breadcrumbs+.calculator-section{padding-top:14px}
.calculator-page .calculator-card,.calculator-page .calculator-result{padding:16px}
.calculator-page .calculator-card-heading{margin-bottom:12px}
.calculator-page .calculator-fields{gap:10px 12px}
.calculator-page .calculator-options{margin-top:12px;padding-top:12px}
.calculator-page .calculator-pension-note{margin-top:12px;padding:8px 10px}
.calculator-page .calculator-actions{margin-top:12px}
@media(max-width:700px){
 .calculator-page .container{width:calc(100% - 24px)}
 .calculator-page .calculator-intro-compact{padding:14px 0 10px}
 .calculator-page .calculator-intro-compact h1{font-size:24px}
 .calculator-page>.calculator-section,.calculator-page>.breadcrumbs+.calculator-section{padding-top:10px;padding-bottom:20px}
 .calculator-page .calculator-card,.calculator-page .calculator-result{padding:14px 12px}
 .calculator-page .calculator-card{grid-row:1}.calculator-page .calculator-result{grid-row:2;position:static}
}
@media print{.calculator-page>.calculator-section,.calculator-page>.breadcrumbs+.calculator-section{padding:0}}
/* Dos conceptos de salud arriba; tres aportes abajo cuando hay ancho suficiente. */
@media(min-width:540px){
 .calculator-page .calculator-checks{grid-template-columns:repeat(6,minmax(0,1fr))}
 .calculator-page .calculator-checks>.calculator-check{grid-column:span 2;min-width:0}
 .calculator-page .calculator-checks>.calculator-check:nth-child(-n+2){grid-column:span 3}
 .calculator-page .calculator-checks>.calculator-check>span{min-width:0;overflow-wrap:break-word}
}
/* Controles compactos conservando una altura táctil mínima de 44 píxeles. */
.calculator-page .calculator-field{gap:6px}
.calculator-page .calculator-field input,.calculator-page .calculator-field select{min-height:44px;padding-top:9px;padding-bottom:9px}
.calculator-page .input-with-prefix,.calculator-page .input-with-suffix{min-height:44px}
/* Cabecera centrada, exclusiva de la calculadora. */
.calculator-page .calculator-intro-compact h1,.calculator-page .calculator-intro-compact p{max-width:none;text-align:center}
