/* v58 (calculadora de prazos): só a página calculadora-de-prazos. Usa as variáveis do v56. */
.cp-hero{padding:40px 0 24px}
.cp-hero h1{font-size:clamp(28px,4.2vw,40px);line-height:1.12;margin:0 0 12px;max-width:22ch}
.cp-hero .lead{margin:0;max-width:62ch;color:var(--sec)}

.cp-bench{background:var(--papel2);border-top:1px solid var(--regua);border-bottom:1px solid var(--regua);padding:28px 0 40px}
.cp-grid{display:grid;gap:24px;align-items:start}
@media (min-width:900px){.cp-grid{grid-template-columns:340px minmax(0,1fr)}}

.cp-form,.cp-sheet{background:#fff;border:1px solid var(--regua);border-radius:4px;padding:20px;min-width:0}
.cp-form fieldset{border:0;margin:0 0 22px;padding:0;min-width:0}
.cp-form legend{font-family:var(--display);font-stretch:87.5%;font-weight:700;font-size:1.05rem;color:var(--tinta);padding:0;margin:0 0 10px}
.cp-form label{display:block;font-weight:600;font-size:.95rem;color:var(--tinta)}
.cp-form input{display:block;width:100%;min-height:44px;margin-top:6px;padding:8px 10px;border:1px solid #b9c3d8;border-radius:4px;background:#fff;color:var(--tinta);font:inherit;font-weight:400;font-variant-numeric:tabular-nums}
.cp-row{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
@media (min-width:560px) and (max-width:899px){.cp-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.cp-hint{margin:0 0 10px;font-size:.92rem;color:var(--sec)}
.cp-form .cp-aviso{margin:4px 0 0;font-size:.9rem;color:var(--sec)}

.cp-sheet h2{font-size:1.2rem;line-height:1.25;margin:0 0 12px}
.cp-sheet .cp-sec+.cp-sec{border-top:1px solid var(--regua);margin-top:24px;padding-top:20px}
.cp-small{margin:10px 0 0;font-size:.9rem;color:var(--sec)}
.cp-vazio{margin:0;color:var(--sec)}
.cp-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.cp-tbl{width:100%;border-collapse:collapse;font-size:.95rem;font-variant-numeric:tabular-nums}
.cp-tbl th{background:var(--celula);text-align:left;font-weight:600;font-size:.8rem;color:var(--tinta);padding:8px 10px;border-bottom:1px solid var(--regua)}
.cp-tbl td{padding:10px;border-bottom:1px solid var(--regua);vertical-align:top;color:var(--tinta)}
.cp-tbl .cp-prazo{font-weight:700;color:var(--prazo);white-space:nowrap}

.cp-actions{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin-top:22px}
.cp-actions .btn{min-height:44px}
.cp-link{min-height:44px;padding:0 2px;background:none;border:0;color:var(--tinta);text-decoration:underline;text-underline-offset:3px;font:inherit;font-weight:600;cursor:pointer}
#cpStatus{font-size:.92rem;color:var(--sec)}
.cp-nota{margin:18px 0 0;font-size:.88rem;color:var(--sec);max-width:70ch}

.cp-body{padding:48px 0 8px}
.cp-body section{max-width:72ch;margin:0 0 40px}
.cp-body h2{font-size:clamp(1.4rem,2.2vw,1.75rem);margin:0 0 14px}
.cp-body h3{font-size:1.08rem;margin:0 0 6px}
.cp-body p{margin:0 0 12px}
.cp-body ol{margin:0 0 12px;padding-left:22px}
.cp-body li{margin:0 0 8px}
.cp-box{border:1px solid var(--regua);background:var(--papel2);border-radius:4px;padding:14px 16px;margin:0 0 40px;max-width:72ch}
.cp-box p{margin:0}

.cp-cta{padding:0 0 56px}
.cp-cta .cta-dark{text-align:left}
.cp-cta .cta-dark p{margin:14px 0 24px}
.cp-cta .cta-dark .hero-cta{justify-content:flex-start}

@media (max-width:560px){
  .cp-tbl thead{display:none}
  .cp-tbl,.cp-tbl tbody,.cp-tbl tr,.cp-tbl td{display:block;width:100%}
  .cp-tbl tr{border-bottom:1px solid var(--regua);padding:10px 0}
  .cp-tbl td{border:0;padding:4px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:baseline}
  .cp-tbl td::before{content:attr(data-label);color:var(--sec);font-size:.88rem}
  .cp-tbl td:first-child{font-weight:600}
  .cp-tbl .cp-prazo{white-space:normal}
}

@media print{
  .hd,.site-footer,.wa-float,.m-cta,#snow-loader,.cp-body,.cp-cta,.cp-actions,.cp-form,.cp-hero .lead{display:none!important}
  .cp-bench{background:#fff;border:0;padding:0}
  .cp-sheet{border:0;padding:0}
  .cp-sheet .cp-sec+.cp-sec{page-break-before:auto}
}
