/* Product result, documents and company footer. */
.service-footer{display:grid;grid-template-columns:1.25fr 1fr 1.2fr 1.2fr;gap:32px;align-items:start;padding-top:54px;padding-bottom:38px}
.service-footer>div{min-width:0;display:flex;flex-direction:column;gap:12px;align-items:flex-start;text-align:left}
.service-footer .brand{margin-bottom:10px}.service-footer p{display:block;margin:0;font-size:16px;line-height:1.65;max-width:none;width:auto}
.service-footer a{font-size:16px;line-height:1.5;overflow-wrap:anywhere}.service-footer .brand{font-size:29px}
.service-footer .label{font-size:14px;color:var(--muted);margin-bottom:4px}
.service-footer .footer-bottom{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px;margin-top:10px;gap:14px;font-size:14px;color:var(--muted)}
.service-footer .footer-bottom a{font-size:14px}.app-mode .service-footer{display:grid;padding-bottom:110px}
.legal-page{max-width:870px;margin:20px auto 90px}.legal-page>.eyebrow{display:block;margin:32px 0 16px}.legal-page h1{font-size:clamp(34px,5vw,60px);line-height:1.12;letter-spacing:-.035em;margin:0 0 24px}
.legal-page .legal-lead{font-size:22px;line-height:1.6;color:var(--muted);margin-bottom:30px}.legal-navigation{display:flex;flex-wrap:wrap;gap:12px 24px;padding:20px 0 30px;border-bottom:1px solid var(--line)}
.legal-page section{margin-top:42px}.legal-page h2{font-size:25px;line-height:1.35;margin:0 0 15px}.legal-page section>div{font-size:18px;line-height:1.85}.legal-page a{color:var(--blue);text-underline-offset:4px}
.company-details{display:grid;grid-template-columns:180px 1fr;gap:14px 28px;margin:0}.company-details dt{color:var(--muted)}.company-details dd{margin:0;overflow-wrap:anywhere}
body:has(dialog[open]){overflow:hidden}
dialog .modal-top{position:sticky;top:0;z-index:5;min-height:52px;background:#fbfcff;padding:8px 0;border-bottom:1px solid var(--line)}
.app-mode dialog .modal-top{background:#f9fdfb}dialog .modal-top .icon-button{flex-shrink:0;min-width:44px;min-height:44px}
.example-hero{display:grid;grid-template-columns:1.4fr .8fr;gap:24px;align-items:center;padding:26px 0 24px}.example-hero h2{font-size:clamp(32px,4vw,48px);line-height:1.1;margin:20px 0}.example-hero p{line-height:1.6}.example-hero img{width:100%;max-height:270px;object-fit:contain;align-self:end}
.example-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.example-totals article{background:#eaf3ff;border-radius:18px;padding:22px 18px;display:flex;flex-direction:column;gap:12px;min-width:0}.example-totals article:first-child{background:#0c2948;color:white}
.example-totals span{font-size:14px;line-height:1.4}.example-totals strong{font-size:24px;line-height:1.25;letter-spacing:-.025em;white-space:nowrap}.example-totals small{font-size:13px;line-height:1.5;opacity:.8}
.example-programs{display:grid;gap:22px;margin:32px 0}.example-program{border:1px solid var(--line);border-radius:22px;padding:28px;background:white}.example-program header{display:grid;grid-template-columns:40px 1fr auto;gap:16px;align-items:start}.example-index{font-size:18px;color:var(--blue);font-weight:700}.example-program h3{font-size:23px;line-height:1.25;margin:0 0 10px}.example-program header p{font-size:14px;line-height:1.5;margin:0;color:var(--muted)}.example-program header>strong{font-size:24px;text-align:right;color:var(--navy);white-space:nowrap}.example-program header>strong small{display:block;font-size:12px;font-weight:400;margin-top:7px}
.example-program>p{font-size:17px;line-height:1.7;margin:22px 0}.example-program ol{margin:0 0 24px;padding-left:23px}.example-program li{padding:10px 0 15px 6px;line-height:1.55}.example-program li::marker{color:var(--blue);font-weight:700}.example-program li p{font-size:16px;color:var(--muted);margin:10px 0 0;line-height:1.65}.example-program>a{font-size:15px;color:var(--blue)}
.example-next{background:#eaf3ff;padding:28px;border-radius:22px;margin:26px 0}.example-next h3{font-size:25px;margin:0 0 14px}.example-next p{line-height:1.6;margin-bottom:24px}.example-next .button{margin-top:8px}
@media(max-width:1000px){.service-footer{grid-template-columns:1fr 1fr;gap:34px}.example-totals strong{font-size:21px}}
@media(max-width:700px){.service-footer{display:grid;grid-template-columns:1fr 1fr;padding:36px 0 108px;gap:28px 22px}.service-footer .footer-brand{grid-column:1/-1}.service-footer a,.service-footer p{font-size:15px}.service-footer .footer-bottom{align-items:flex-start;flex-direction:column;font-size:13px;gap:10px}.service-footer .footer-contact{grid-column:1/-1}.legal-page{margin:12px auto 55px}.legal-page .legal-lead{font-size:19px}.legal-page section>div{font-size:17px;line-height:1.8}.legal-page h2{font-size:22px}.company-details{grid-template-columns:1fr;gap:5px}.company-details dd{margin-bottom:17px}.example-hero{grid-template-columns:1fr;gap:12px;padding:20px 0 12px}.example-hero img{max-height:210px}.example-hero h2{font-size:33px}.example-totals{grid-template-columns:1fr;gap:10px}.example-totals article{padding:19px 22px}.example-totals strong{font-size:29px}.example-program{padding:23px 20px}.example-program header{grid-template-columns:30px 1fr;gap:13px}.example-program header>strong{grid-column:2;text-align:left;font-size:27px;white-space:normal}.example-program h3{font-size:22px}.example-next{padding:24px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.calculation-field.needs-review{border-color:#a83d39;background:#fff5f3}.calculation-feedback{display:block;color:#a83d39;font-size:15px;line-height:1.5;margin-top:10px}

/* Keep source links distinct and cover content above the sticky dialog bar. */
.calculation-sources{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:16px}.calculation-sources .source-link{overflow-wrap:anywhere}dialog .modal-top{box-shadow:0 -32px 0 #fbfcff}.app-mode dialog .modal-top{box-shadow:0 -32px 0 #f9fdfb}
