.calculator{position:relative;isolation:isolate;overflow:hidden;overflow:clip;scroll-margin-top:20px;padding-block:clamp(64px,7vw,96px);background-color:#171c24;color:#fff;border-bottom:1px solid #ffffff1a}
.calculator:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,#ffffff0d,transparent 68%)}
.calculator>.section-heading .eyebrow{color:#c6cbd4}
.site-header.is-over-calculator:before{background:var(--glass-sheen),rgba(23,28,36,.84)}
.calculator .section-heading{position:relative;z-index:1;justify-content:center;text-align:center;margin-bottom:40px}
.calculator .section-heading h2{font-size:clamp(44px,5.2vw,74px);max-width:980px;line-height:1.06;letter-spacing:-.04em}
.calc-heading-line{display:block;overflow:hidden;padding:.12em 0;margin:-.12em 0}
.calc-heading-text{display:block}
.calc-heading-line:last-child{color:#dbe0e8}
.calculator-grid{position:relative;z-index:1;grid-template-columns:minmax(0,1fr);gap:28px;align-items:start;max-width:640px;margin-inline:auto}
.calculator-inputs{position:relative;align-content:start;padding:32px;gap:16px;grid-template-columns:minmax(0,1fr);color:var(--navy);border:1px solid #ffffffb3;border-radius:26px;background:linear-gradient(145deg,#ffffffeb,#eef1f5de);box-shadow:inset 0 1px 1px #fff,inset 0 -1px 0 #ffffff73,0 24px 72px #00000033;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.calc-field{min-width:0}
.calculator .calc-field select{margin-top:0;min-height:62px;padding:16px 40px 16px 22px;font-size:16px;font-weight:500;background:linear-gradient(120deg,#ffffffed,#f8f9fbbd);border:1px solid #05133722;border-radius:14px;box-shadow:inset 0 1px 0 #fff,0 7px 20px #05133708;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:border-color .25s,box-shadow .25s}
.calculator .calc-field select:hover{border-color:#05133770}
.calculator .calc-field select:focus{border-color:var(--navy)}
.calc-field select:focus-visible{outline:2px solid var(--navy);outline-offset:3px}
.calc-actions{display:flex;align-items:center;gap:24px;grid-column:1/-1;margin-top:2px}
.calculator .calc-actions .button{flex:1;min-height:56px;padding:14px 22px;border:1px solid var(--navy);border-radius:12px;background:var(--navy);color:#fff;box-shadow:none;font-size:15px;gap:28px}
.calculator .calc-actions .button:hover{background:#1a294b;box-shadow:none;transform:none}
.calculator .calc-actions .button:disabled{opacity:.65;cursor:wait}
.calculator .calc-actions .button:hover span{transform:translateX(3px)}
.calculator .calc-reset{min-height:44px;padding:10px 4px;border:0;font-size:14px;color:#505966;text-decoration:underline;text-underline-offset:4px}
.calc-form-status{grid-column:1/-1;font-size:13px;line-height:1.6;color:#505966}
.calc-form-status:empty,.estimate-selection:empty,#calc-status:empty{display:none}
.calculator .calculator-result{padding:32px;border:1px solid #ffffff99;border-radius:24px;background:rgba(247,248,250,.96);color:var(--navy);box-shadow:inset 0 1px 1px #fff,0 18px 56px #00000026;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);scroll-margin-top:calc(var(--site-header-height,100px) + 20px)}
.calculator-result>.eyebrow{font-size:10px;letter-spacing:1.7px;margin-bottom:22px}
.calc-total>span{font-size:clamp(46px,4.8vw,68px);line-height:1.1;font-variant-numeric:tabular-nums}
.calc-total small{font-size:12px;margin-top:10px;line-height:1.6}
.estimate-monthly{display:flex;align-items:baseline;gap:8px;margin:18px 0 0;font-size:12px;color:#505966}
.estimate-monthly strong{font-size:19px;font-weight:500;color:var(--navy);font-variant-numeric:tabular-nums}
.estimate-selection,#calc-status{font-size:12px;line-height:1.7;margin:20px 0 0;color:#505966}
.calculator-result .estimate-method{margin-top:24px;border-top:1px solid #0513371c;border-bottom:0}
.estimate-method summary{padding:17px 0 0;font-family:'Work Sans',sans-serif;font-size:12px;font-weight:500;gap:15px;min-height:44px}
.estimate-method summary i{width:12px;height:12px}
.estimate-method summary i:before,.estimate-method summary i:after{background:var(--navy)}
.estimate-method summary:focus-visible{outline:2px solid var(--navy);outline-offset:5px}
.estimate-method>.estimate-detail-content{padding:18px 0 0;font-size:12px;line-height:1.8}
.estimate-assumptions{margin:0 0 16px}
.estimate-assumptions>div{display:flex;justify-content:space-between;gap:16px;margin-top:7px}
.estimate-assumptions dd{margin:0;font-weight:500;color:var(--navy);white-space:nowrap}
.calculator .calculator-result:not(.has-estimate){display:none}
@media(prefers-reduced-motion:no-preference){
 .calc-reveal-ready .calc-heading-text{opacity:0;transform:translateY(112%);transition:transform .9s cubic-bezier(.16,1,.3,1),opacity .6s ease}
 .calc-reveal-ready .calc-heading-line:last-child .calc-heading-text{transition-delay:.16s}
 .calc-reveal-ready.is-title-revealed .calc-heading-text{opacity:1;transform:translateY(0)}
 .calc-reveal-ready .calc-field,.calc-reveal-ready .calc-actions{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .8s cubic-bezier(.16,1,.3,1)}
 .calc-reveal-ready .calc-field:nth-child(2){transition-delay:.1s}
 .calc-reveal-ready .calc-field:nth-child(3){transition-delay:.2s}
 .calc-reveal-ready .calc-field:nth-child(4){transition-delay:.3s}
 .calc-reveal-ready .calc-actions{transition-delay:.4s}
 .calc-reveal-ready.is-form-revealed .calc-field,.calc-reveal-ready.is-form-revealed .calc-actions{opacity:1;transform:translateY(0)}
 .calc-reveal-ready.is-form-revealed #calculate-income:after{animation:calc-light-sweep 1.1s .7s ease-out both}
 .calculator-result.has-estimate{animation:calc-arrive .5s cubic-bezier(.2,.7,.2,1) both}
}
.calculator #calculate-income{position:relative;overflow:hidden;isolation:isolate}
.calculator #calculate-income:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 20%,#ffffff21 48%,transparent 75%);transform:translateX(-120%)}
@keyframes calc-light-sweep{to{transform:translateX(120%)}}
@keyframes calc-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:750px){.calculator .section-heading{margin-bottom:28px}.calculator .calculator-result{padding:28px}.calc-total>span{font-size:54px}}
@media(max-width:520px){.calculator-inputs{padding:20px;gap:14px;border-radius:22px}.calculator .section-heading h2{font-size:clamp(30px,8.2vw,42px)}.calculator .calc-field select{min-height:58px;padding-inline:16px 32px}.calculator .calc-actions .button{justify-content:space-between;padding-inline:16px;font-size:14px;gap:12px}.calculator .calculator-result{padding:26px 24px}.calc-actions{gap:16px;margin-top:4px}.calc-total>span{font-size:48px}}
