.if-calculator{scroll-margin-top:110px;border:1px solid #cddbd1;border-radius:24px;background:#eff5f0;padding:clamp(1rem,3vw,2.25rem);margin-top:3.5rem}
.if-calculator h2{margin:0 0 .75rem}.if-calculator h3{font-size:1.12rem;line-height:1.4;margin:0 0 1.2rem}.if-intro{max-width:78ch;color:#52675b;line-height:1.7}
.if-example-note{padding:1rem 1.2rem;border-left:4px solid #65826e;background:#fff;border-radius:8px;margin:1.4rem 0;font-size:.87rem;line-height:1.65}
.if-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;align-items:start}
.if-input-panel{min-width:0;background:#fff;border:1px solid #d0ddd4;border-radius:16px;padding:1.5rem}.if-input-grid{display:grid;grid-template-columns:1fr;gap:1.2rem}
.if-field{min-width:0}.if-field label{display:block;font-size:.87rem;font-weight:750;line-height:1.5;color:#264a39;margin-bottom:.4rem}
.if-field input,.if-field select{width:100%;max-width:100%;min-width:0;min-height:47px;border:1px solid #aabdaf;border-radius:8px;padding:.75rem .8rem;background:#fff;color:#193e2c;font:inherit;font-size:1rem}
.if-field input:focus,.if-field select:focus,.if-reset:focus-visible{outline:3px solid #bd8b40;outline-offset:3px}.if-field [aria-invalid=true]{border-color:#a23c2d;background:#fff6f3}
.if-help{font-size:.8rem;line-height:1.6;color:#53675b;margin:.4rem 0 0}.if-terms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0 0;padding:1rem 0;border-top:1px solid #e1e9e3;border-bottom:1px solid #e1e9e3}.if-terms div{min-width:0}.if-terms dt{font-size:.73rem;line-height:1.45;color:#5c7063}.if-terms dd{font-size:.97rem;font-weight:750;line-height:1.4;margin:.3rem 0 0;color:#244b37;white-space:nowrap}
.if-extra-field{margin-top:1.2rem}.if-reset{font:inherit;font-size:.83rem;color:#27523c;text-decoration:underline;text-underline-offset:3px;border:0;background:transparent;cursor:pointer;min-height:44px;padding:.7rem 0;margin-top:.4rem}
.if-error{background:#fff0eb;border-left:4px solid #a13828;padding:1rem;border-radius:6px;color:#7b2519;font-size:.9rem;line-height:1.6;margin:1rem 0 0}
.if-results{min-width:0;background:#fff;border:1px solid #c4d7c9;border-radius:16px;overflow:hidden}.if-result-hero{background:#163f31;color:#fff;padding:1.5rem}.if-result-hero h3{color:#fff}.if-result-hero p{font-size:.86rem;color:#e3eee6;line-height:1.55;margin:.3rem 0}.if-result-hero output{display:block;font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:750;line-height:1.25;letter-spacing:-.04em;margin:.55rem 0;white-space:nowrap}.if-result-hero .if-currency-label{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:#ccdfd2}
.if-result-body{padding:1.3rem 1.5rem}.if-result-body dl{margin:0}.if-result-body dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.85rem 0;border-bottom:1px solid #e1e9e3}.if-result-body dt{font-size:.83rem;line-height:1.5;color:#4c6355}.if-result-body dd{margin:0;font-weight:750;font-size:1rem;text-align:right;color:#193e2c;white-space:nowrap}.if-result-body dt small{display:block;font-size:.74rem;line-height:1.55;font-weight:400;color:#64796b;margin-top:.2rem}.if-result-body .if-text-value{white-space:normal;max-width:12rem;font-size:.85rem}.if-result-body .if-total-row{padding:1rem 0;border-bottom:0}.if-total-row dt,.if-total-row dd{font-weight:750;color:#173d2b}.if-total-note{font-size:.79rem;line-height:1.65;color:#53675b;margin:.5rem 0 0}
.if-assumptions{font-size:.8rem;line-height:1.7;color:#50675a;border-top:1px solid #cadbcf;margin:1.4rem 0 0;padding-top:1.1rem}.if-formula{font-size:.8rem;line-height:1.7;color:#50675a;margin:.7rem 0 0;overflow-wrap:anywhere}.if-calculator .cta-row{margin-top:1.2rem}
.if-calculator [hidden]{display:none!important}.if-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:800px){.if-layout{grid-template-columns:1fr}.if-result-hero output{font-size:2.6rem}}
@media(max-width:520px){.if-calculator{border-radius:16px;padding:1rem}.if-input-panel,.if-result-body,.if-result-hero{padding:1.1rem}.if-terms{grid-template-columns:1fr 1fr;row-gap:.9rem}.if-terms div:first-child{grid-column:1/-1}.if-result-hero output{font-size:2rem}.if-result-body dl>div{display:grid;grid-template-columns:1fr;gap:.35rem}.if-result-body dd{text-align:left}.if-result-body .if-text-value{max-width:none}.if-example-note{padding:.85rem 1rem}}
@media(prefers-reduced-motion:reduce){.if-calculator *{scroll-behavior:auto!important;transition:none!important}}
