.skip:focus{left:var(--s2);top:var(--s2);z-index:100;background:var(--card);padding:var(--s2) var(--s3);position:fixed}.sr-only-focusable:not(:focus){clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.row{gap:var(--s2);flex-wrap:wrap;align-items:center;display:flex}.lead{font-size:var(--fs-lead);line-height:1.35}.linkbtn{font:inherit;color:var(--accent-ink);min-height:var(--tap);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.brand{color:var(--ink);font-weight:800;text-decoration:none}.stage{width:100%;height:var(--stage-h);z-index:2;border-bottom:1px solid var(--rule);background:linear-gradient(#a9bde3 0%,#f3d0c0 55%,#f7c9b0 100%);position:fixed;top:0;left:0;overflow:hidden}.stage canvas{opacity:0;width:100%;height:100%;transition:opacity .8s;display:block}.stage.ready canvas{opacity:1}.stage:after{content:"";pointer-events:none;background:radial-gradient(120% 90% at 60% 45%,#0000 55%,#28181e29 100%);position:absolute;inset:0}.poster{padding-bottom:var(--s5);color:#fff;font-weight:700;font-size:var(--fs-small);text-shadow:0 1px 8px #0000004d;place-items:end center;transition:opacity .6s;display:grid;position:absolute;inset:0}.stage.ready .poster,.nogl .poster{opacity:0}.nogl .stage{background:radial-gradient(40% 30% at 70% 72%,#ff9f0a59,#0000 70%),radial-gradient(60% 40% at 30% 85%,#8fb2788c,#0000 70%),linear-gradient(#a9bde3 0%,#f3d0c0 58%,#f7c9b0 100%)}.nogl .stage canvas,.nogl .youtag{display:none}.youtag,.battag{z-index:3;pointer-events:none;white-space:nowrap;opacity:0;will-change:transform;transform:var(--tagT);font-weight:800;font-size:var(--fs-small);border-radius:999px;transition:opacity .35s;position:absolute;top:0;left:0}.youtag{background:var(--accent);color:var(--on-accent);transform-origin:50% 130%;padding:4px 10px 5px;box-shadow:0 6px 18px -6px #ff5a1fb3}.youtag:after{content:"";background:var(--accent);z-index:-1;border-radius:2px;width:10px;height:10px;margin-left:-5px;position:absolute;bottom:-5px;left:50%;transform:rotate(45deg)}.battag{color:#fff;background:#282c3cc7;padding:3px 9px}.youtag.on,.battag.on{opacity:1}.hud{left:var(--gutter);top:calc(var(--stage-h) - 86px);z-index:4;color:#fff;font-weight:800;font-size:var(--fs-title);opacity:0;text-shadow:0 2px 16px #15161c73;pointer-events:none;background:#0c0e1e8c;border-radius:14px;padding:8px 12px;line-height:1;transition:opacity .3s;position:fixed}.hud small{font-size:var(--fs-small);margin-top:6px;font-weight:700;display:block}body[data-shot=years] .hud{opacity:1}.outtag{z-index:4;left:var(--gutter);color:#fff;font-weight:800;font-size:var(--fs-small);opacity:0;pointer-events:none;background:#0c0e1eb8;border-radius:999px;padding:6px 12px;transition:opacity .3s;position:fixed;top:56px}body.outage .outtag{opacity:1}.steps{z-index:1;padding:calc(var(--stage-h) + 4px) var(--gutter) 0;position:relative}.step{padding:var(--s6) 0 var(--s5)}.step.hero{padding-top:var(--s5)}.step.long{min-height:150svh}.step.long .card{top:calc(var(--stage-h) + 16px);position:sticky}.step .card{max-width:520px}.restoring .step:not(.hero){min-height:60svh;display:block!important}.sk{align-items:flex-start;gap:var(--s3);flex-direction:column;display:flex}.sk-bar{width:100%;height:var(--fs-body);border-radius:var(--r-sm);background:var(--soft);display:block}.sk-head{width:72%;height:var(--fs-title)}.sk-big{width:46%;height:calc(var(--fs-hero) * .8);margin:var(--s2) 0;border-radius:var(--r-md)}.sk-short{width:58%}.sk-btn{width:52%;height:var(--tap);margin-top:var(--s3);border-radius:var(--r-md);background:var(--card);border:1px solid var(--rule)}.sk-bar:not(.sk-btn){background:linear-gradient(90deg, var(--soft) 0%, var(--rule) 50%, var(--soft) 100%) 0 0 / 300% 100%;animation:1.4s ease-in-out infinite sk-shimmer}@keyframes sk-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.sk-bar:not(.sk-btn){background:var(--soft);animation:none}}.step[aria-busy] .card{height:var(--sk-h,auto);overflow:hidden}@media (width>=900px){#step-roof{--sk-h:627px}#step-size{--sk-h:505px}#step-pay{--sk-h:829px}#step-day{--sk-h:644px}#step-battery{--sk-h:419px}#step-years{--sk-h:677px}#step-end{--sk-h:870px}}@media (width<=899.98px){#step-roof{--sk-h:699px}#step-size{--sk-h:557px}#step-pay{--sk-h:803px}#step-day{--sk-h:655px}#step-battery{--sk-h:517px}#step-years{--sk-h:660px}#step-end{--sk-h:947px}}.foot{padding:var(--s6) 0 120px}@media (width>=900px){.stage{z-index:0;border-bottom:0}.steps{max-width:600px;padding:0 0 0 48px}.step{flex-direction:column;justify-content:center;min-height:100vh;display:flex}.step.long{justify-content:flex-start;min-height:230vh}.step.long .card{top:12vh}.step .card{background:var(--glass);-webkit-backdrop-filter:blur(18px)saturate(1.3);backdrop-filter:blur(18px)saturate(1.3);border:1px solid var(--glassline);box-shadow:var(--e2);border-radius:22px;padding:30px 32px 26px}.hud{font-size:var(--fs-hero);text-align:right;inset:auto 44px 120px auto}.outtag{font-size:var(--fs-body);top:64px;left:auto;right:44px}.foot{padding-bottom:var(--s7)}}@media (width<=899.98px){.step .card{background:var(--card);border:1px solid var(--rule);border-radius:var(--r-lg);padding:var(--s5) var(--s4);box-shadow:var(--e1)}.step.hero .card{box-shadow:none;background:0 0;border:0;padding:0}#step-end{padding-top:var(--s5);justify-content:flex-start}body.formopen #step-end{padding-top:var(--s5)}html .sticky{top:auto;bottom:calc(12px + env(safe-area-inset-bottom));left:var(--gutter);right:var(--gutter);border-radius:var(--r-md);align-items:center;padding:12px 16px}body.quotebar #homebar{opacity:0;pointer-events:none}#step-years{padding-bottom:88px}.steps{padding-top:calc(50svh + 4px)}body.picked:not([data-step="0"]){--stage-h:30svh}}.stage,.hud,.outtag,.stagetitle{transition:transform .7s var(--ease-out), opacity .5s ease, height .4s var(--ease-out), top .4s var(--ease-out)}body.finale .hud,body.finale .outtag{opacity:0}body.finale.formopen .stage{transform:translateY(-105%)}#step-end{flex-direction:column;justify-content:center;min-height:100svh;display:flex}#step-end .card{transition:transform .6s var(--ease-out), box-shadow .6s ease}body.finale #step-end .card{box-shadow:var(--e2)}#step-end h2{font-size:var(--fs-title);letter-spacing:-.02em;line-height:1.15}#step-end h2 .fair{margin-top:var(--s2);font-size:min(var(--fs-hero), (min(100vw, 558px) - 72px) / 7.9);letter-spacing:-.04em;white-space:nowrap;line-height:1;display:block}@media (width>=900px){#step-end h2 .fair{font-size:var(--fs-hero)}}#step-end h2+p{margin-top:var(--s2)}#step-end .recap{gap:var(--s3);margin:var(--s4) 0;padding:var(--s3) 0;border-block:1px solid var(--rule);display:grid}#step-end .recap dt{color:var(--muted);font-size:var(--fs-small)}#step-end .recap dd{margin:0;font-weight:700}#step-end .check{margin:0}#step-end .cta{margin:var(--s4) 0 var(--s2)}#step-end .cta .btn{min-height:56px;font-size:var(--fs-lead);flex:100%}#step-end .leadform .cta .btn.secondary{flex:0 auto}.endsec{margin-top:var(--s5)}.endsec h3{margin:var(--s3) 0 var(--s2);font-size:var(--fs-body)}#step-end p.small{max-width:65ch}.leadform .consent{color:var(--ink);margin:0}.leadform .cf-turnstile:empty{display:none}.nextline{background:var(--accent-soft);border-radius:var(--r-md);padding:var(--s3) var(--s4);margin:0}.leadform p.small{max-width:65ch}.billparts{margin:var(--s2) 0 var(--s3);font-size:var(--fs-body)}.billparts tr.total th,.billparts tr.total td{border-bottom:0;font-weight:800}.survey .chip-legend{display:none}@media (width>=900px){#step-end{align-items:center;width:calc(100vw - 48px)}#step-end .card{width:100%;max-width:680px}#footer{text-align:center;width:calc(100vw - 48px)}}@media (prefers-reduced-motion:reduce){.stage,.hud,.outtag,.stagetitle,#step-end .card{transition:none}}.stagetitle{z-index:3;left:var(--gutter);right:var(--gutter);top:calc(var(--s4) + var(--cf-h,0px));max-width:16ch;font-size:var(--fs-title);letter-spacing:-.03em;color:#15161c;text-shadow:0 1px 14px #fffaf5bf;transition:opacity var(--t-med) ease, transform var(--t-med) var(--ease-out);pointer-events:none;margin:0;line-height:1.08;position:fixed}body:not([data-step="0"]) .stagetitle{opacity:0;transform:translateY(-8px)}@media (width>=900px){.stagetitle{left:600px;right:32px;top:calc(36px + var(--cf-h,0px));font-size:min(var(--fs-hero), 4.6vw);max-width:16ch;line-height:1}}.big{font-size:var(--fs-hero);letter-spacing:-.045em;margin:0 0 var(--s2);font-weight:800;line-height:.95}.big span{font-size:var(--fs-title);letter-spacing:-.02em;margin-left:4px}.plan-answer{font-size:var(--fs-lead);margin:var(--s3) 0}.plan-answer b{font-size:var(--fs-title);letter-spacing:-.02em}.answer{gap:var(--s2);font-size:var(--fs-lead);margin:var(--s3) 0;align-items:flex-start;line-height:1.35;display:flex}#card-battery .answer{font-size:var(--fs-body)}.answer svg{flex:none;width:20px;height:20px;margin-top:4px}.answer.good svg{color:var(--good)}.answer.watch svg{color:var(--watch)}.answer.red svg{color:var(--red)}.stats{border:1px solid var(--rule);border-radius:var(--r-md);margin:var(--s4) 0;grid-template-columns:repeat(3,1fr);display:grid}.stats div{padding:var(--s2) var(--s3);border-left:1px solid var(--rule)}.stats div:first-child{border-left:0}.stats dt{font-size:var(--fs-small);color:var(--muted)}.stats dd{margin:0}.stats dd.num{font-size:var(--fs-lead);letter-spacing:-.02em;font-weight:800}.stats dd.sub{font-size:var(--fs-small);color:var(--muted);line-height:1.3}#step-hero .card{container-type:inline-size}.hero-result{font-size:min(var(--fs-lead), 100cqi / 24);text-wrap:balance;min-height:1lh;margin:0;font-weight:700}#card-battery .why{margin-top:calc(-1 * var(--s2));color:var(--muted)}.hero-result.quiet{color:var(--muted);font-weight:400}.dn[data-dn=day] .flowline.night,.dn[data-dn=night] .flowline.day{display:none}.flowline{gap:var(--s3);margin:var(--s3) 0 var(--s4);align-items:baseline;min-height:3lh;display:flex}.dot{border-radius:50%;flex:none;width:10px;height:10px;transform:translateY(1px)}.dot.sun{background:var(--solar)}.dot.night{background:#6f8cff}.hero-form{gap:var(--s4);margin:var(--s4) 0 var(--s2);display:grid}.field label,.capture label,.roofform label{margin-bottom:var(--s1);font-weight:700;display:block}input:where(:not([type=radio],[type=checkbox],[type=range])){font:inherit;font-size:var(--fs-lead);width:100%;min-height:var(--tap);padding:0 var(--s3);border:1px solid var(--muted);border-radius:var(--r-sm);background:var(--card);color:var(--ink)}.zipin{width:7ch;min-height:52px;font-weight:800}.stepno{width:20px;height:20px;margin-right:var(--s1);background:var(--accent);color:var(--on-accent);font-size:var(--fs-small);vertical-align:1px;border-radius:50%;place-items:center;font-weight:800;display:inline-grid}.hero-form input:required:invalid{border-color:var(--ink)}#bill::placeholder{color:color-mix(in srgb, var(--muted) 55%, transparent);opacity:1}.inlineq{align-items:center;gap:var(--s2) var(--s3);margin:var(--s3) 0;border:0;flex-wrap:wrap;padding:0;display:flex}.inlineq[hidden]{display:none}.inlineq>p{margin:0}.inlineq>p .muted{white-space:nowrap}.hero-row{gap:var(--s3) var(--s4);flex-wrap:wrap;align-items:flex-end;display:flex}.hero-row .field{margin:0}.addsbox{margin-top:0}.billval{align-items:baseline;gap:var(--s2);margin:0;display:flex}.money-in{display:inline-block;position:relative}.money-in>span{left:var(--s3);color:var(--muted);font-size:var(--fs-lead);position:absolute;top:50%;transform:translateY(-50%)}.money-in input{padding-left:calc(var(--s3) + 14px)}.big-in input{width:7ch;font-weight:800;font-size:var(--fs-title);min-height:52px;padding-left:calc(var(--s3) + 26px)}.big-in>span{font-size:var(--fs-title);font-weight:800}.slider{width:100%;max-width:440px;margin:var(--s2) 0 0;accent-color:var(--accent-ink);min-height:var(--tap);display:block}.err{color:var(--red);margin:var(--s1) 0 0}.seg{gap:var(--s2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.seg legend{width:100%;margin-bottom:var(--s1);font-weight:700}.seg label{align-items:center;gap:var(--s2);min-height:var(--tap);padding:0 var(--s4);border:1px solid var(--rule);background:var(--card);cursor:pointer;border-radius:999px;display:inline-flex}.seg label:has(input:checked){border-color:var(--accent-ink);background:var(--accent-soft);font-weight:700}.seg input{accent-color:var(--accent-ink);margin:0}.adds{gap:var(--s2);flex-wrap:wrap;display:flex}.add{font:inherit;font-size:var(--fs-small);color:var(--ink);border:1px solid var(--rule);background:var(--card);padding:0 var(--s3) 0 var(--s2);min-height:var(--tap);cursor:pointer;transition:border-color var(--t-fast), transform var(--t-fast) var(--ease-out);border-radius:999px;align-items:center;gap:6px;font-weight:700;display:inline-flex}.add svg{width:22px;height:22px;color:var(--muted);flex:none}.add[aria-pressed=true]{border-color:var(--accent-ink);background:var(--accent-soft)}.add[aria-pressed=true] svg{color:var(--accent-ink)}.add:active,.chip:active{transform:scale(.97)}.unsup{margin-top:var(--s4)}.capture{gap:var(--s2);margin-top:var(--s3);display:grid}body.formopen #homebar{opacity:0;visibility:hidden;pointer-events:none}.homebar{transition:transform var(--t-med) var(--ease-out);transform:translateY(-160%)}.homebar.show,.homebar:focus-within{transform:none}.homebar{top:var(--s2);left:var(--s2);right:var(--s2);z-index:20;background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glassline);border-radius:var(--r-md);padding:0 var(--s3);box-shadow:var(--e1);position:fixed}@media (width>=900px){.homebar{width:460px;left:auto;right:var(--s4);top:var(--s4)}}.hb-row{align-items:center;gap:var(--s2);justify-content:space-between;display:flex}.hb-sum{margin:0}.hb-edit{gap:var(--s3);padding-bottom:var(--s3);display:grid}.hb-edit label{font-weight:700;font-size:var(--fs-small);gap:var(--s1);display:grid}.stepnav{justify-content:space-between;align-items:center;gap:var(--s2);margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--rule);display:flex}.navbtn{font:inherit;font-size:var(--fs-small);min-height:var(--tap);min-width:var(--tap);padding:0 var(--s4);border:1px solid var(--rule);background:var(--card);color:var(--ink);cursor:pointer;border-radius:999px;font-weight:700}.navbtn.next{background:var(--ink);color:var(--ground);border-color:var(--ink)}.navbtn[aria-disabled=true]{opacity:.35}.stepof{color:var(--muted);align-items:center;gap:var(--s2);display:flex}.dots{gap:4px;display:flex}.dots i{background:var(--rule);border-radius:50%;width:6px;height:6px}.dots i.on{background:var(--ink)}.sticky{z-index:40;right:var(--s3);top:calc(var(--stage-h) - 60px);background:var(--accent);color:var(--on-accent);font:inherit;cursor:pointer;transition:opacity .25s ease, transform .25s var(--ease-out);border:0;border-radius:999px;flex-direction:column;align-items:flex-end;padding:9px 16px;display:flex;position:fixed;box-shadow:0 12px 30px -10px #ff5a1fb3}.sticky b{font-size:var(--fs-small);font-weight:800;line-height:1.2}.sticky small{display:none}.sticky.off{opacity:0;pointer-events:none;transform:translateY(8px)}.sticky:active{transform:scale(.97)}@media (width>=900px){.sticky{border-radius:18px;padding:12px 20px 10px;top:auto;bottom:28px;right:32px}.sticky b{font-size:var(--fs-body)}.sticky small{font-size:var(--fs-small);font-weight:600;display:block}}.payend{font-weight:700;font-size:var(--fs-lead);min-height:2.6em;line-height:1.3}.chart{width:100%;height:auto;margin:var(--s3) 0;display:block;overflow:visible}.chart text{fill:var(--muted);font-family:inherit;font-size:11px}.chart .pl{stroke:var(--ink);stroke-width:1.5px}.chart .grid{stroke:var(--rule);stroke-dasharray:2 3}.chart .axt{fill:var(--ink);font-weight:700}.chart .midl{stroke:var(--solar);stroke-width:3px;fill:none;stroke-dasharray:1;stroke-dashoffset:0}.chart .cross{fill:var(--accent);opacity:0;transition:opacity .25s}.chart .cross.on{opacity:1}.yearline{color:var(--muted);margin:0}.chips{gap:var(--s2);flex-wrap:wrap;display:flex}.chip{font:inherit;min-height:var(--tap);min-width:var(--tap);padding:0 var(--s4);border:1px solid var(--rule);background:var(--card);color:var(--ink);cursor:pointer;border-radius:999px}.chip[aria-pressed=true]{border-color:var(--accent-ink);background:var(--accent-soft);font-weight:700}.chipgroup{margin:var(--s3) 0}.chip-legend{margin-bottom:var(--s1)}.confidence,.iwarn{gap:var(--s2);align-items:flex-start;display:flex}.confidence svg,.iwarn>svg{flex:none;margin-top:3px}.confidence{color:var(--watch)}.iwarn{border:1px solid var(--rule);border-radius:var(--r-md);padding:var(--s3);margin:var(--s3) 0;background:var(--card)}.iwarn.watch{background:var(--watch-soft);border-color:color-mix(in srgb, var(--watch) 35%, transparent)}.iwarn.watch>svg{color:var(--watch)}.iwarn.red{background:var(--red-soft)}.iwarn p{margin:0 0 var(--s1)}.iwarn-title{font-weight:700}.iwarn-more summary{cursor:pointer;min-height:24px;list-style:none}.iwarn-more summary::-webkit-details-marker{display:none}.iwarn-more summary:after{content:" +";color:var(--muted);font-weight:400}.iwarn-more[open] summary:after{content:" −"}.iwarn-more p{margin-top:var(--s2)}.iwarn-actions{gap:var(--s2);margin-top:var(--s2);flex-wrap:wrap;display:flex}.exp{border-top:1px solid var(--rule);margin-top:var(--s3)}.exp summary{min-height:var(--tap);align-items:center;gap:var(--s2);cursor:pointer;color:var(--accent-ink);font-weight:700;list-style:none;display:flex}.exp summary::-webkit-details-marker{display:none}.exp summary:before{content:"";width:8px;height:8px;transition:transform var(--t-fast) var(--ease-out);border-bottom:2px solid;border-right:2px solid;flex:none;transform:rotate(-45deg)}.exp[open] summary:before{transform:rotate(45deg)}.exp-body{padding-bottom:var(--s3)}.how{padding-left:var(--s5)}.how li{margin-bottom:var(--s2)}.tablewrap{margin:var(--s3) 0;overflow-x:auto}.cmp{border-collapse:collapse;width:100%;font-size:var(--fs-small)}.cmp th,.cmp td{text-align:left;padding:var(--s2);border-bottom:1px solid var(--rule);vertical-align:top}.cmp thead th{color:var(--muted);font-weight:700}.cmp td.num{text-align:right}.billcompare{margin:var(--s3) 0}.bc-row{align-items:center;gap:var(--s2);margin-bottom:var(--s2);grid-template-columns:7.5em 1fr auto;display:grid}.bc-label{font-size:var(--fs-small)}.bc-bar{background:var(--soft);border-radius:4px;height:16px;overflow:hidden}.bc-bar span{background:var(--muted);height:100%;transition:width var(--t-med) var(--ease-out);border-radius:4px;display:block}.bc-row.after .bc-bar span{background:var(--accent)}.bc-val{text-align:right;min-width:4.5em;font-weight:700}.explain{padding-left:var(--s4)}.explain li{margin-bottom:var(--s2)}.verdicts2{gap:var(--s3);display:grid}.verdicts2 h3{margin:0 0 var(--s1);font-size:var(--fs-body)}.verdict{margin:0;line-height:1.35}.verdict .vword{font-weight:700}@media (width>=560px){.verdicts2{grid-template-columns:1fr 1fr}}.switch{align-items:center;gap:var(--s3);min-height:var(--tap);cursor:pointer;margin:var(--s2) 0;display:flex}.switch input{opacity:0;width:1px;height:1px;position:absolute}.sw{background:var(--rule);width:40px;height:24px;transition:background-color var(--t-fast);border-radius:12px;flex:none;position:relative}.sw:after{content:"";background:var(--card);width:18px;height:18px;box-shadow:var(--e1);transition:transform var(--t-fast) var(--ease-out);border-radius:50%;position:absolute;top:3px;left:3px}.switch input:checked+.sw{background:var(--accent-ink)}.switch input:checked+.sw:after{transform:translate(16px)}.switch input:focus-visible+.sw{outline:3px solid var(--accent);outline-offset:2px}.timeline{margin:var(--s3) 0;padding:0;list-style:none}.timeline li{gap:var(--s3);padding:var(--s2) 0;align-items:flex-start;display:flex}.step-n{background:var(--soft);width:26px;height:26px;font-size:var(--fs-small);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.checklist,.sumlist{margin:var(--s2) 0;padding:0;list-style:none}.check,.sumlist li{gap:var(--s2);padding:var(--s1) 0;align-items:flex-start;display:flex}.check svg,.sumlist svg{flex:none;margin-top:4px}.check.applies svg{color:var(--watch)}.applies-tag{color:var(--watch);font-size:var(--fs-small)}.sumlist svg{color:var(--good)}.qlist h4{margin:var(--s3) 0 var(--s1);font-size:var(--fs-body)}.qlist ul{padding-left:var(--s5);margin:0}.drawer{padding:var(--s4);background:var(--card);width:100%;max-width:640px;height:100svh;max-height:100svh;color:var(--ink);border:0;margin:0 0 0 auto}.drawer.short{border-radius:var(--r-md);max-width:480px;height:auto;margin:auto}.drawer::backdrop{background:#00000059}.drawer-head{justify-content:space-between;align-items:center;gap:var(--s3);top:calc(-1 * var(--s4));background:var(--card);padding:var(--s2) 0;display:flex;position:sticky}.drawer-head h2{margin:0}.az{columns:2;padding:0;list-style:none}.az li{padding:var(--s1) 0;break-inside:avoid}.raterows{padding:0;list-style:none}.raterows li{border-bottom:1px solid var(--rule);padding:var(--s2) 0}.raterows p{margin:0 0 var(--s1)}.raterows svg{vertical-align:-3px}.share{margin-top:var(--s1)}.roofform{gap:var(--s2);margin-top:var(--s3);display:grid}.faqtip{margin-top:var(--s3)}.faqtip summary{cursor:pointer;color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline;list-style:none;display:inline}.faqtip summary::-webkit-details-marker{display:none}.faqtip summary,.foot a,.linkbtn{position:relative}.faqtip summary:after,.foot a:after{content:"";position:absolute;inset:-14px -4px}.linkbtn:after{content:"";position:absolute;inset:0 -6px}.faqtip .tip{margin-top:var(--s2);padding:var(--s3) var(--s4);background:var(--soft);border-radius:var(--r-md);max-width:60ch;position:relative;box-shadow:0 6px 18px -10px #15161c59}.faqtip .tip:before{content:"";background:var(--soft);border-radius:2px;width:12px;height:12px;position:absolute;top:-6px;left:20px;transform:rotate(45deg)}.leadform{gap:var(--s3);margin:var(--s4) 0 0;display:grid}.leadform .cta,.leadform h3{margin:0}.check-line{gap:var(--s2);cursor:pointer;align-items:flex-start;display:flex}.check-line input{width:20px;height:20px;accent-color:var(--accent-ink);flex:none;margin-top:3px}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.sent,.leadform,.answer{overflow-wrap:anywhere}.matched{margin:var(--s2) 0;gap:var(--s2);padding:0;list-style:none;display:grid}.matched li{border:1px solid var(--rule);border-radius:var(--r-md);padding:var(--s3);gap:2px;display:grid}.roofconfirm h3{margin:var(--s3) 0 var(--s1)}.roofpic{border-radius:var(--r-md);background:var(--soft);width:100%;margin:var(--s2) 0;position:relative;overflow:hidden}.roofpic img,.roofpic svg{width:100%;height:100%;display:block;position:absolute;inset:0}.roofpic img{object-fit:cover}.roofpic polygon{fill:#ff5a1f1f;stroke:var(--accent);stroke-width:3px;vector-effect:non-scaling-stroke}.roofpic.tapping{cursor:crosshair;outline:3px dashed var(--accent);outline-offset:-3px}.roofprogress{margin:var(--s3) 0;gap:var(--s2);padding:0;list-style:none;display:grid}.roofprogress li{color:var(--muted)}.roofprogress li.now{color:var(--ink);font-weight:700}.roofprogress li.done{color:var(--good)}.roofprogress li{align-items:center;gap:var(--s2);display:flex}.roofprogress li:before{content:"";border:2px solid;border-radius:50%;flex:none;width:8px;height:8px}.roofprogress li.done:before{border-width:0 2px 2px 0;border-radius:0;width:5px;height:10px;margin:0 2px 3px;transform:rotate(45deg)}.roofcaption{margin:var(--s3) 0 var(--s2)}.roofdone .note{gap:var(--s2);align-items:flex-start;display:flex}.roofdone .note svg{color:var(--watch);flex:none;margin-top:3px}.payv{margin-top:var(--s3)}.pay-grid{gap:var(--s4);margin:var(--s3) 0;display:grid}.paymonth,.payyears{margin:0}.pm-row{align-items:center;gap:var(--s2);margin-bottom:var(--s2);font-size:var(--fs-small);grid-template-columns:6.5em 1fr auto;display:grid}.pm-row b{font-size:var(--fs-body);text-align:right;min-width:3.5em}.pm-track{background:var(--soft);border-radius:999px;height:18px;position:relative;overflow:hidden}.pm-seg{transform-origin:0;transform:translateX(calc(var(--x) * 100%)) scaleX(var(--w));transition:transform .55s var(--ease-out);position:absolute;inset:0}.pm-seg.today{background:#5b5e6b}.pm-seg.bill{background:var(--accent)}.pm-seg.pay.loan{background:#6f8cff}.pm-seg.pay.lease{background:repeating-linear-gradient(135deg,#8a7cf0 0 6px,#b3a9f7 6px 12px)}.pm-seg.pay.cash{transform:translateX(calc(var(--x) * 100%)) scaleX(0)}.pm-key{gap:var(--s1) var(--s3);margin-top:var(--s1);flex-wrap:wrap;display:flex}.pm-key span{align-items:center;gap:6px;display:inline-flex}.pm-key .k{background:var(--accent);border-radius:3px;width:10px;height:10px}.pm-key .k.pay{background:#6f8cff}.pm-key .k.pay.lease{background:#8a7cf0}.payv:not([data-pv=loan]) .k-loan,.payv:not([data-pv=lease]) .k-lease,.payv[data-pv=cash] .pm-key{display:none}.payyears svg{width:100%;height:auto;display:block;overflow:visible}.payyears figcaption,.paymonth figcaption{margin-bottom:var(--s1)}.payyears text.side{fill:var(--muted);font-weight:700}.payyears .axis{margin:var(--s1) 0 0;text-align:center}.payv .chip-legend{display:none}.payyears .zero{stroke:var(--ink);stroke-opacity:.35;stroke-width:1px}.payyears text{fill:var(--muted);font-size:10px}.payyears text.end{fill:var(--ink);opacity:0;font-size:12px;font-weight:800;transition:opacity .3s}.payv[data-pv=cash] text.end.cash,.payv[data-pv=loan] text.end.loan,.payv[data-pv=lease] text.end.lease{opacity:1}.payyears .pl{fill:none;stroke:var(--muted);stroke-opacity:0;stroke-width:1.5px;stroke-linecap:round;transition:stroke-opacity .3s,stroke-width .3s}.payyears .even{fill:var(--accent);opacity:0;transition:opacity .3s}.payv[data-pv=cash] .pl.cash,.payv[data-pv=loan] .pl.loan,.payv[data-pv=lease] .pl.lease{stroke:var(--accent);stroke-opacity:1;stroke-width:3px}.payv[data-pv=loan] .pl.loan{stroke:#6f8cff}.payv[data-pv=lease] .pl.lease{stroke:#8a7cf0;stroke-dasharray:5 4}.payv[data-pv=cash] .even.cash,.payv[data-pv=loan] .even.loan,.payv[data-pv=lease] .even.lease{opacity:1}.payyears .pl.drawing{stroke-dasharray:1;animation:pl-draw .7s var(--ease-out) both}@keyframes pl-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.payv[data-pv=cash] .pv-text:not([data-view=cash]),.payv[data-pv=loan] .pv-text:not([data-view=loan]),.payv[data-pv=lease] .pv-text:not([data-view=lease]){display:none}.pv-text p{margin:0 0 var(--s2)}.pv-text .tag{color:var(--good);font-style:normal;font-weight:700}@media (prefers-reduced-motion:reduce){.pm-seg,.payyears .pl,.payyears .even{transition:none}.payyears .pl.drawing{animation:none}}
