/* CalculatePilot site footer (dark green design). Generated markup: tools/footer_build.py.
   Every selector is prefixed with `body footer.site-footer.cp-footer` so it wins over the older
   .site-footer rules in styles.css / home-redesign.css without !important. */
body footer.site-footer.cp-footer{
  --cpf-bg:#08261c;--cpf-pill:#153128;--cpf-line:#213c33;--cpf-pill-line:#1f3a30;
  --cpf-muted:#9db8ae;--cpf-green:#34d399;--cpf-green-text:#6ee7b7;--cpf-wp:#0b3326;--cpf-wp-line:#24483c;
  background:var(--cpf-bg);color:var(--cpf-muted);border:0;margin:0;padding:64px 0 40px;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:14.4px;line-height:1.5;
}
body footer.site-footer.cp-footer *,
body footer.site-footer.cp-footer *::before,
body footer.site-footer.cp-footer *::after{box-sizing:border-box}
body footer.site-footer.cp-footer .cpf-wrap{max-width:1280px;margin:0 auto;padding:0 24px}
body footer.site-footer.cp-footer a{color:var(--cpf-muted);text-decoration:none;transition:color .15s ease}
body footer.site-footer.cp-footer a:hover{color:#fff;text-decoration:none}
body footer.site-footer.cp-footer a:focus-visible{outline:2px solid var(--cpf-green);outline-offset:3px;border-radius:4px}

/* top: brand column + 4 link columns */
body footer.site-footer.cp-footer .cpf-top{display:grid;grid-template-columns:minmax(0,24rem) repeat(4,minmax(0,1fr));gap:40px}
body footer.site-footer.cp-footer .cpf-brand{display:flex;flex-direction:column;align-items:flex-start}

body footer.site-footer.cp-footer .cpf-logo{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px 0 8px;
  background:#f2f4f3;border-radius:6px;color:#14171a;font-weight:600;font-size:8.5px;letter-spacing:.01em}
body footer.site-footer.cp-footer .cpf-logo:hover{color:#14171a;background:#fff}
body footer.site-footer.cp-footer .cpf-mark{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;
  border-radius:4px;background:#1a7a5e;color:#fff;font-size:6.5px;font-weight:800;letter-spacing:0}
body footer.site-footer.cp-footer .cpf-name{color:#14171a}

body footer.site-footer.cp-footer .cpf-tag{margin:22px 0 0;max-width:24rem;color:var(--cpf-muted);font-size:14.4px;line-height:1.6}

body footer.site-footer.cp-footer .cpf-mail{display:inline-flex;align-items:center;gap:10px;margin-top:22px;min-height:32px;padding:0 12px;
  background:var(--cpf-pill);border:1px solid var(--cpf-pill-line);border-radius:6px;font-size:12px}
body footer.site-footer.cp-footer .cpf-mail strong{color:#fff;font-weight:700}
body footer.site-footer.cp-footer .cpf-mail .cpf-sup{padding-left:10px;border-left:1px solid var(--cpf-line);color:var(--cpf-muted)}
body footer.site-footer.cp-footer .cpf-mail:hover strong{color:var(--cpf-green-text)}
body footer.site-footer.cp-footer .cpf-dot{width:8px;height:8px;border-radius:50%;background:var(--cpf-green);flex:none;box-shadow:0 0 0 3px rgba(52,211,153,.18)}

body footer.site-footer.cp-footer .cpf-social{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
body footer.site-footer.cp-footer .cpf-soc{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;
  background:var(--cpf-pill);color:#fff}
body footer.site-footer.cp-footer .cpf-soc:hover{background:var(--cpf-line);color:#fff}
body footer.site-footer.cp-footer .cpf-soc svg{width:14px;height:14px;fill:currentColor}

body footer.site-footer.cp-footer .cpf-wp{display:inline-flex;align-items:center;gap:9px;margin-top:24px;min-height:37px;padding:0 13px;
  background:var(--cpf-wp);border:1px solid var(--cpf-wp-line);border-radius:8px;color:#fff;font-size:11.5px}
body footer.site-footer.cp-footer .cpf-wp:hover{border-color:var(--cpf-green);color:#fff}
body footer.site-footer.cp-footer .cpf-wp b{font-weight:700}
body footer.site-footer.cp-footer .cpf-wp svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor}
body footer.site-footer.cp-footer .cpf-wp svg.cpf-wp-ico{stroke:var(--cpf-green)}

body footer.site-footer.cp-footer .cpf-col h4{margin:0 0 12px;padding:0;color:#fff;font-size:11px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;line-height:1.4;border:0}
body footer.site-footer.cp-footer .cpf-col ul{list-style:none;margin:0;padding:0}
body footer.site-footer.cp-footer .cpf-col li{margin:0 0 7px;padding:0;line-height:1.4;color:var(--cpf-muted)}
body footer.site-footer.cp-footer .cpf-col a{font-size:13.6px}

/* bottom bar */
body footer.site-footer.cp-footer .cpf-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;
  margin-top:48px;padding:32px 0 0;border-top:1px solid var(--cpf-line);color:var(--cpf-muted)}
body footer.site-footer.cp-footer .cpf-copy{margin:0 0 6px;color:#fff;font-size:13px;font-weight:500;line-height:1.5}
body footer.site-footer.cp-footer .cpf-links{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0;font-size:12px}
body footer.site-footer.cp-footer .cpf-links li{display:inline-flex;align-items:center;margin:0;padding:0;color:var(--cpf-muted)}
body footer.site-footer.cp-footer .cpf-links li+li::before{content:"";width:3px;height:3px;border-radius:50%;background:var(--cpf-muted);margin:0 12px}
body footer.site-footer.cp-footer .cpf-links .cpf-ok,
body footer.site-footer.cp-footer .cpf-links .cpf-ok a{color:var(--cpf-green-text)}
body footer.site-footer.cp-footer .cpf-links .cpf-ok svg{width:13px;height:13px;margin-right:5px;fill:none;stroke:currentColor;flex:none}

body footer.site-footer.cp-footer .footer-langs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0}
body footer.site-footer.cp-footer .footer-langs a{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 10px;border:0;border-radius:4px;
  background:var(--cpf-pill);color:var(--cpf-muted);font-size:11.5px;font-weight:500;line-height:1}
body footer.site-footer.cp-footer .footer-langs a span{font-weight:500}
body footer.site-footer.cp-footer .footer-langs a:hover{background:var(--cpf-line);color:#fff;border:0}
body footer.site-footer.cp-footer .footer-langs a[aria-current="true"]{background:var(--cpf-line);color:#fff;font-weight:700;border:0}

/* tablet / phone */
@media (max-width:980px){
  body footer.site-footer.cp-footer{padding-top:48px}
  body footer.site-footer.cp-footer .cpf-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
  body footer.site-footer.cp-footer .cpf-brand{grid-column:1/-1}
}
@media (max-width:560px){
  body footer.site-footer.cp-footer .cpf-wrap{padding:0 18px}
  body footer.site-footer.cp-footer .cpf-bottom{flex-direction:column;align-items:flex-start;margin-top:36px;padding-top:24px}
  body footer.site-footer.cp-footer .cpf-links{gap:6px 16px}
  body footer.site-footer.cp-footer .cpf-links li+li::before{display:none}
  body footer.site-footer.cp-footer .footer-langs a span{display:inline}
}
@media print{body footer.site-footer.cp-footer{display:none}}
