:root{
  --calc-navy:#102b52;
  --calc-cream:#fff8f0;
  --calc-canvas:#f7f2e8;
}

html{min-height:100%;background:var(--calc-canvas)}
body.calc-page{
  margin:0;
  min-height:100vh;
  padding:clamp(18px,3vw,42px);
  box-sizing:border-box;
  color:#172b45;
  background:
    radial-gradient(circle at 12% 8%,rgba(241,104,58,.10),transparent 27%),
    linear-gradient(rgba(16,43,82,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(16,43,82,.035) 1px,transparent 1px),
    var(--calc-canvas);
  background-size:auto,28px 28px,28px 28px,auto;
}

body.calc-page > div[class^="jcalc-"]{
  width:min(1120px,100%);
  max-width:none;
  min-height:calc(100vh - clamp(36px,6vw,84px));
  margin:0 auto;
  padding:clamp(28px,5vw,68px);
  box-sizing:border-box;
  border:3px solid var(--calc-navy);
  border-radius:30px;
  background:var(--calc-cream);
  box-shadow:10px 12px 0 var(--calc-navy),20px 24px 36px rgba(6,27,54,.14);
}

body.calc-page .backlink{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  margin-bottom:clamp(24px,4vw,44px);
  padding:0 16px;
  border:2px solid var(--calc-navy);
  border-radius:999px;
  background:#fffdf7;
  color:var(--calc-navy);
  font-weight:800;
  text-decoration:none;
  box-shadow:3px 3px 0 var(--calc-navy);
}

body.calc-page input,
body.calc-page select,
body.calc-page button{min-height:44px}

body.calc-page .sitefoot{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px 14px;
  margin-top:64px;
  padding-top:24px;
  border-top:2px solid var(--main,var(--calc-navy));
  color:var(--mute,#596473);
  text-align:center;
}
body.calc-page .sitefoot .footerlinks{display:inline-flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px 12px}
body.calc-page .sitefoot a{color:inherit;text-decoration:none}
body.calc-page .sitefoot a:hover{text-decoration:underline;text-underline-offset:3px}
body.calc-page .sitefoot .legal{display:inline-flex;align-items:center;gap:7px}
body.calc-page .sitefoot p.cp{margin:0;font-size:12px;letter-spacing:0;line-height:1.5}

@media (max-width:720px){
  html{background:var(--calc-cream)}
  body.calc-page{padding:0;background:var(--calc-cream)}
  body.calc-page > div[class^="jcalc-"]{
    width:100%;
    min-height:100vh;
    margin:0;
    padding:24px 18px 42px;
    border:0;
    border-radius:0;
    box-shadow:none;
  }
  body.calc-page .backlink{margin-bottom:24px}
  body.calc-page .sitefoot{gap:8px 12px;margin-top:48px;padding-top:22px;font-size:12px;line-height:1.5}
  body.calc-page .sitefoot p.cp{width:100%}
}

@media (max-width:360px){
  body.calc-page table.fin{
    width:100%!important;
    min-width:0!important;
    table-layout:fixed;
    font-size:10px!important;
  }
  body.calc-page table.fin th,
  body.calc-page table.fin td{
    min-width:0!important;
    padding-left:3px!important;
    padding-right:3px!important;
    overflow-wrap:anywhere;
  }
}
