/* Scoped estimator system: readable questions, roomy choices and a stable navigation. */
body.site.walkthrough-page{background:#f4f3ed;font-family:var(--sans);color:#283c32}
.estimate-journey{margin:36px auto 20px;scroll-margin-top:88px}
.journey-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px}
.journey-kicker{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#64795f;margin:0 0 7px}
body.site .journey-top h1{font-family:var(--display);font-size:42px;line-height:1.1;letter-spacing:-.8px;margin:0 0 8px;color:#283e32}
.journey-top>div>p:last-child{font-size:14px;color:#657168;margin:0}
.journey-assurance{display:flex;align-items:center;gap:8px;background:#e8eddf;border-radius:30px;padding:10px 15px;font-size:12px;color:#4c6347;white-space:nowrap}
.journey-assurance svg,.soft-note svg{width:19px;height:19px;flex-shrink:0}
.journey-shell{display:grid;grid-template-columns:240px minmax(0,1fr);background:#fffefa;border:1px solid #dce1d7;border-radius:20px;overflow:clip;box-shadow:0 10px 36px #283c3206}
.journey-companion{padding:32px 24px;background:#e9eddf;border-right:1px solid #dce1d7;display:flex;flex-direction:column}
.rail-title{font-size:10px;font-weight:700;letter-spacing:1.4px;color:#647259;margin:0 0 24px}
.journey-steps{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.journey-steps button{display:flex;align-items:center;gap:11px;width:100%;padding:7px 0;border:0;background:none;text-align:left;font:500 13px var(--sans);color:#6c7768;cursor:default;opacity:1}
.journey-steps button:not(:disabled){cursor:pointer}.journey-steps button:not(:disabled):hover{color:#284535}
.rail-number{display:grid;place-items:center;width:29px;height:29px;flex-shrink:0;border:1px solid #c9d0c0;border-radius:50%;font-size:11px;background:#f5f6ef}
.rail-check{margin-left:auto;visibility:hidden;color:#3e6445}
.journey-steps [aria-current=step]{color:#233d2d;font-weight:700}.journey-steps [aria-current=step] .rail-number{background:#385841;color:white;border-color:#385841}
.journey-steps .is-complete .rail-check{visibility:visible}.journey-steps .is-complete .rail-number{background:#d4dfca;color:#36513a;border-color:#bdceb1}
.rail-note{margin-top:auto;padding-top:44px;color:#5f7355}.rail-note svg{width:27px;height:27px}.rail-note p{font-family:var(--display);font-size:25px;margin:10px 0 6px}.rail-note>span{font-size:11px;line-height:1.8;display:block;color:#687560}
.rail-rv{font-size:11px;margin-top:22px;color:#516b49}
.walk-form{position:relative;padding:30px 44px 0;min-width:0;min-height:600px;display:flex;flex-direction:column}
.journey-progress{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:11px;color:#5e715a;font-size:11px;font-weight:600;margin-bottom:26px}
.journey-progress [role=progressbar]{height:4px;background:#e8ecdf;width:100%;border-radius:10px;overflow:hidden}.journey-progress i{display:block;background:#74936b;width:14.28%;height:100%;transition:width .2s}
.walk-step{padding-bottom:24px;min-width:0}.step-heading{margin-bottom:25px}.step-icon{display:inline-flex;width:37px;height:37px;align-items:center;justify-content:center;background:#edf1e5;color:#536e47;border-radius:10px;margin-bottom:12px}.step-icon svg{width:22px;height:22px}
body.site .step-heading h2{font-family:var(--display);font-size:37px;line-height:1.12;letter-spacing:-.4px;color:#293f32;margin:0 0 11px;outline:none;font-weight:600}
.step-heading p{color:#667166;font-size:14px;line-height:1.65;margin:0;max-width:560px}
.walk-form label{font:600 12px var(--sans);color:#354a3b;display:flex;flex-direction:column;gap:9px;margin:0}
.walk-form input:not([type=radio]):not([type=checkbox]),.walk-form textarea,.walk-form select{box-sizing:border-box;display:block;width:100%;border:1px solid #ccd5c8;border-radius:8px;padding:12px 13px;min-height:47px;font:400 15px var(--sans);color:#2c4434;background:#fff;box-shadow:none;margin:0}
.walk-form textarea{resize:vertical;line-height:1.6}.walk-form input::placeholder,.walk-form textarea::placeholder{color:#939a90}.walk-form input:focus-visible,.walk-form select:focus-visible,.walk-form textarea:focus-visible,.walk-form button:focus-visible{outline:2px solid #6f8a5d;outline-offset:3px}
.walk-form .help{font:400 11px/1.6 var(--sans);color:#737d70;margin:6px 0 0}.walk-form label .help{margin:0}.walk-form input[type=checkbox],.walk-form input[type=radio]{accent-color:#476644;flex-shrink:0;width:17px;height:17px;min-height:0;box-shadow:none;margin:0;position:static;opacity:1}
.walk-form fieldset{padding:0;margin:0 0 21px;border:0;min-width:0}.walk-form legend{font:600 12px var(--sans);color:#354a3b;margin-bottom:12px;padding:0}.walk-form legend>span,.optional{font-size:10px;color:#7e8777;font-weight:400}
.field-pair{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;margin-top:20px}.address-search{position:relative}.address-search>input{margin-top:9px!important}.walk-form .address-search>input{min-height:53px;padding-left:15px}
#address-suggestions{position:relative;list-style:none;margin:5px 0;padding:5px;border:1px solid #cdd5c7;border-radius:9px;background:#fff;box-shadow:0 8px 20px #273b3210;z-index:3}
#address-suggestions button{border:0;background:none;width:100%;text-align:left;font:400 13px/1.5 var(--sans);padding:12px;color:#2e4735;border-radius:5px;cursor:pointer}#address-suggestions button:hover,#address-suggestions [aria-selected=true]{background:#edf2e7}.address-attribution{font:400 12px Arial,sans-serif;color:#5e5e5e;letter-spacing:normal;white-space:nowrap;padding:5px 10px;text-align:right}
.soft-note{display:flex;align-items:flex-start;gap:10px;padding:15px 17px;background:#f0f3e9;border-radius:9px;margin-top:24px;color:#55704a}.soft-note p{font-size:12px;line-height:1.65;margin:0;color:#5d6e56}
.walk-privacy{font-size:10px;line-height:1.7;color:#7c8377;margin:13px 0 0}.walk-privacy a{color:#62745a}
.home-address{font-size:12px;background:#f1f3e9;color:#53694a;padding:10px 13px;border-radius:7px;margin:0 0 24px;overflow-wrap:anywhere}
.type-choices{display:flex;gap:9px}.walk-form .type-choice{flex:1;position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;padding:12px 8px;border:1px solid #d5dccd;border-radius:8px;font-size:11px;cursor:pointer}.type-choice:has(input:checked){background:#edf3e6;border-color:#708c60}
.home-facts{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:15px;margin:22px 0 12px}.home-facts input{font-size:19px!important;min-height:54px!important}
.condition-choices{display:grid;gap:10px}.walk-form .walk-choice{position:relative;border:1px solid #d6ddcf;border-radius:10px;background:#fff;cursor:pointer;color:#314633;transition:border-color .15s,background .15s;min-width:0}.walk-form .walk-choice:has(input:checked){border-color:#648553;background:#f0f5e9;box-shadow:inset 0 0 0 1px #648553}.walk-choice:has(input:focus-visible),.type-choice:has(input:focus-visible),.addon-pick:has(input:focus-visible){outline:2px solid #648553;outline-offset:3px}
.walk-form .condition-choice{display:flex;flex-direction:row;align-items:center;gap:16px;padding:16px 18px}.condition-level{display:grid;place-items:center;flex-shrink:0;width:35px;height:35px;background:#e9efde;color:#6a8555;border-radius:9px;font-size:16px;letter-spacing:2px}.choice-copy{display:flex;flex-direction:column;gap:5px}.walk-form .walk-choice strong{font:600 14px/1.3 var(--sans)}.walk-form .walk-choice small{font:400 12px/1.65 var(--sans);color:#6e7969}
.walk-form .addon-picks{display:grid;grid-template-columns:1fr 1fr;gap:10px}.walk-form .addon-pick{position:relative;display:flex;flex-direction:row;align-items:flex-start;gap:10px;padding:16px 13px;border:1px solid #d6ddcf;border-radius:9px;cursor:pointer;background:#fff;min-width:0}.addon-pick:has(input:checked){background:#f0f5e9;border-color:#648553}.walk-form .addon-pick>span{display:grid;gap:6px;flex:1}.addon-pick strong{font-size:11px;font-weight:600;line-height:1.5}.addon-pick small{font-size:10px;font-weight:400;line-height:1.5;color:#7b8374}.walk-form .addon-pick>b{position:static;font-size:10px;white-space:nowrap;font-weight:600;color:#537147}.walk-form .feature-field{margin-top:24px;margin-bottom:22px}.walk-form .check-row{display:flex;flex-wrap:wrap;gap:10px 22px}.walk-form .check{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:12px;font-weight:400}.walk-form .walk-notes{margin-top:22px}
.plan-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.walk-form .plan-choice{padding:22px 19px;gap:9px}.plan-choice>input{position:absolute!important;right:17px;top:20px}.plan-tag{font:600 10px var(--sans);text-transform:uppercase;letter-spacing:.8px;color:#758469}.walk-form .plan-choice strong{font-size:19px;margin-top:4px}.plan-choice small{padding-right:5px}
.detail-timeline{display:grid;gap:0;margin-bottom:24px}.detail-timeline>div{display:flex;gap:17px;padding:0 0 22px}.detail-timeline>div>span{display:grid;place-items:center;flex-shrink:0;width:35px;height:35px;border-radius:50%;background:#eef2e6;border:1px solid #d5dfc9;font-size:11px;color:#5f794f}.detail-timeline>div:last-child{padding-bottom:0}body.site .detail-timeline h3{font:600 13px/1.4 var(--sans);margin:3px 0 7px;color:#3d543b}.detail-timeline p{font-size:12px;line-height:1.7;color:#75806d;margin:0;max-width:450px}
.walk-summary{display:grid;gap:10px;margin:0}.walk-summary>div{display:grid;grid-template-columns:115px minmax(0,1fr) auto;gap:13px;align-items:start;padding:15px 17px;border:1px solid #e1e6da;border-radius:8px}.walk-summary dt{font-size:11px;color:#74806b}.walk-summary dd{margin:0;font-size:12px;color:#3e5238;overflow-wrap:anywhere;white-space:pre-line;line-height:1.65}.summary-edit{background:none;border:0;color:#567749;font:500 11px var(--sans);cursor:pointer;text-decoration:underline;padding:1px 0;min-height:24px}
.walk-navigation{border-top:1px solid #e5e9df;margin-top:auto;display:flex;align-items:center;gap:16px;padding:21px 0 25px}.walk-navigation .btn{margin-left:auto;border-radius:8px;min-width:155px;min-height:47px;background:#405d3c;border-color:#405d3c;font-size:13px;font-weight:500}.walk-navigation .btn:hover{background:#2f492d}.walk-back{font:500 12px var(--sans);border:0;background:none;color:#697b5d;cursor:pointer;padding:12px 0}.walk-back:hover{color:#2b482e}.navigation-hint{font-size:10px;color:#849079}.journey-bottom{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#78816f;padding:16px 0}.journey-bottom a{color:#536b47}
.walk-error{font:400 13px/1.6 var(--sans);color:#963f30;background:#fff0e9;border-radius:8px;padding:13px;margin:0 0 15px}
.walk-loading{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;background:#fffefaf5;border-radius:0 20px 20px 0;text-align:center;backdrop-filter:blur(5px)}body.site .walk-loading h2{font-family:var(--display);font-size:32px;color:#344f36;margin:15px 0 10px}.walk-loading p{font-size:13px;color:#6e7c64;margin:0}.cleaning-scene{width:210px;color:#6b8758}.cleaning-wand{transform-origin:180px 165px;animation:clean-sweep 1.5s ease-in-out infinite alternate}.cleaning-sparkles{animation:clean-sparkle 1.1s ease-in-out infinite alternate}.loading-dots{display:flex;gap:6px;margin-top:20px}.loading-dots i{width:5px;height:5px;background:#7a935f;border-radius:50%;animation:clean-sparkle .8s infinite alternate}.loading-dots i:nth-child(2){animation-delay:.2s}.loading-dots i:nth-child(3){animation-delay:.4s}
.walk-result{max-width:900px!important;padding-bottom:30px;scroll-margin-top:90px}.walk-result .result-card{position:static!important;background:#fffefa;border:1px solid #dbe2d1;border-radius:17px;padding:35px;box-shadow:0 9px 30px #283c3206}.walk-result .label{font:600 11px var(--sans);letter-spacing:1.1px;text-transform:uppercase;color:#79876c;margin:0 0 20px}.walk-result [data-ranges]{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:25px}.price-tile{background:#f0f4e8;border:1px solid #d9e3cf;border-radius:10px;padding:23px}.price-tile:only-child{grid-column:1/-1}.walk-result h2.range-title{font:500 14px var(--sans);color:#45613c;margin:0 0 14px}.walk-result p.range{font:500 43px/1.1 var(--display);color:#2c482e;margin:0 0 12px}.walk-result .muted{font:400 12px/1.7 var(--sans);color:#77836c}.walk-result .result-fine{font:400 12px/1.8 var(--sans);color:#6f7e64;margin:18px 0}.walk-result .result-area{font:400 12px/1.6 var(--sans);padding:12px 15px;border-radius:8px}.walk-result .btn{font-size:13px;border-radius:8px}
.has-estimate .journey-shell,.has-estimate .journey-bottom{display:none}.has-estimate{max-width:868px}.walk-edit{margin-bottom:10px}
.walkthrough-page .walk-request{max-width:900px;padding-bottom:50px}.walkthrough-page .request-panel{padding:32px;border:1px solid #dbe2d1;border-radius:17px;background:#fffefa}.walkthrough-page .request-head h2{font-family:var(--display);font-size:31px;margin-top:0}.walkthrough-page .request-head p{font-size:13px;line-height:1.8}.walkthrough-page .request-form{font-family:var(--sans);font-size:13px}.walkthrough-page .request-form fieldset{border-color:#e1e6d9}.walkthrough-page .request-form label{font-size:12px}.walkthrough-page .request-form input,.walkthrough-page .request-form select,.walkthrough-page .request-form textarea{font-family:var(--sans);font-size:14px}.walkthrough-page .request-form .help{font-size:11px}
.walk-ready [hidden],.walkthrough-page .walk-result[hidden],.walkthrough-page .walk-request[hidden]{display:none!important}
@keyframes clean-sweep{from{transform:rotate(-12deg) translateX(-14px)}to{transform:rotate(12deg) translateX(9px)}}@keyframes clean-sparkle{from{opacity:.2}to{opacity:1}}
@media(max-width:900px){.journey-shell{grid-template-columns:195px minmax(0,1fr)}.journey-companion{padding:27px 18px}.walk-form{padding:26px 27px 0}.journey-steps button{font-size:12px}.walk-form .addon-picks{grid-template-columns:1fr}.journey-top h1{font-size:37px}}
@media(max-width:650px){.estimate-journey{margin-top:22px}.journey-top{align-items:flex-start;gap:10px;margin-bottom:18px}.journey-kicker{font-size:8px;letter-spacing:1px}body.site .journey-top h1{font-size:31px}.journey-top>div>p:last-child{font-size:12px}.journey-assurance{display:none}.journey-shell{display:block;border-radius:13px}.journey-companion{display:none}.walk-form{padding:22px 20px 0;min-height:0}.journey-progress{margin-bottom:23px}.step-icon{width:33px;height:33px;margin-bottom:12px}body.site .step-heading h2{font-size:31px;line-height:1.1}.step-heading p{font-size:13px;line-height:1.7}.step-heading{margin-bottom:23px}.walk-step{padding-bottom:22px}.field-pair{gap:12px;grid-template-columns:1.2fr 1fr}.walk-form input:not([type=radio]):not([type=checkbox]),.walk-form select,.walk-form textarea{font-size:16px}.type-choices{flex-wrap:wrap;gap:7px}.walk-form .type-choice{font-size:10px;white-space:nowrap;padding:12px 7px;gap:5px}.walk-form .type-choice input{width:13px;height:13px}.home-facts{grid-template-columns:1fr 1fr;gap:15px}.home-facts>label:first-child{grid-column:1/-1}.home-facts input{font-size:18px!important}.walk-form .condition-choice{padding:16px 13px;gap:10px}.condition-level{width:25px;height:30px;font-size:12px}.walk-form .walk-choice strong{font-size:13px}.walk-form .walk-choice small{font-size:11px;line-height:1.7}.walk-form .addon-picks{grid-template-columns:1fr}.walk-form .addon-pick{padding:15px 12px}.addon-pick strong{font-size:12px}.addon-pick small{font-size:11px}.walk-form .addon-pick>b{font-size:11px}.plan-choices{grid-template-columns:1fr;gap:10px}.walk-form .plan-choice{padding:18px;gap:6px}.walk-form .plan-choice strong{font-size:18px}.plan-tag{font-size:9px}.plan-choice small{max-width:95%}.detail-timeline>div{gap:12px}.detail-timeline p{font-size:12px}.walk-summary>div{grid-template-columns:minmax(0,1fr) auto;padding:14px;gap:7px}.walk-summary dt{grid-column:1}.walk-summary dd{grid-column:1;grid-row:2}.summary-edit{grid-column:2;grid-row:1;min-height:28px}.walk-navigation{padding:18px 0 21px;gap:12px}.walk-navigation .btn{min-width:150px}.navigation-hint{display:none}.walk-back{font-size:12px}.journey-bottom{font-size:9px;flex-wrap:wrap;gap:5px}.walk-loading{border-radius:12px}.walk-result .result-card{padding:22px}.walk-result [data-ranges]{grid-template-columns:1fr}.price-tile{padding:20px}.walk-result p.range{font-size:43px}.has-estimate .journey-top h1{font-size:32px}.walkthrough-page .request-panel{padding:22px}.walkthrough-page .request-head h2{font-size:28px}.walkthrough-page .request-form input,.walkthrough-page .request-form select,.walkthrough-page .request-form textarea{font-size:16px}.walkthrough-page .request-form .row{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.cleaning-wand,.cleaning-sparkles,.loading-dots i{animation:none}.journey-progress i{transition:none}}
/* Keep the site’s general form rules from changing the guided layout. */
body.site .walk-form legend{font:600 13px var(--sans);margin-bottom:12px}
.walk-form{scroll-margin-top:88px;min-height:560px}.walk-navigation{position:sticky;bottom:0;background:#fffefa;z-index:4}
.journey-companion{padding-top:26px;padding-bottom:26px}.rail-title{margin-bottom:15px}.journey-steps{gap:3px}.rail-note{padding-top:28px}.rail-note p{font-size:22px;line-height:1.2;margin:10px 0}.rail-note>span{line-height:1.7}.journey-steps button{padding-top:5px;padding-bottom:5px}
.estimate-journey{margin-top:26px}.journey-top{margin-bottom:22px}.walk-form label{font-size:13px}.walk-form .help{font-size:12px}.walk-privacy{font-size:11px}
@media(max-width:650px){.walk-form{min-height:0}.walk-navigation{padding-bottom:calc(18px + env(safe-area-inset-bottom));}.walk-form .type-choice{font-size:11px}.walk-form .help{font-size:11px}.walk-privacy{font-size:10px}}
.walk-result .result-card{color:#314b36}.walk-result .result-area{background:#eff3e8;color:#526b46}.walk-result .result-area.area-inside{background:#e8f0df;color:#426239}.walk-result .result-area.area-outside{background:#fff0e5;color:#8b5433}.walk-result .result-error{background:#ffede6;color:#934635}.walk-result .result-card a:not(.btn){color:#4d6e41}.walk-result h2[tabindex]{outline:none}.walk-result .label{font-style:normal}.walk-result .walk-summary{margin-top:20px}
.walkthrough-page .request-panel{display:block;scroll-margin-top:90px}.walkthrough-page .request-intro{position:static;margin-bottom:27px}.walkthrough-page .request-intro h2{font-family:var(--display);font-size:32px;padding-bottom:0;margin:0 0 10px}.walkthrough-page .request-intro h2::after{display:none}.walkthrough-page .request-intro .lead{font:400 13px/1.8 var(--sans);color:#718067;max-width:650px;margin:0}.walkthrough-page .request-form{background:transparent;border:0;box-shadow:none;padding:0}.walkthrough-page .request-form legend{font:600 14px var(--sans);color:#405b38;margin-bottom:14px}.walkthrough-page .request-form fieldset{margin:0 0 22px;padding:0}.walkthrough-page .request-form .choice{font-size:12px}.walkthrough-page .request-form button[type=submit]{border-radius:8px;font-size:14px}.walkthrough-page .request-form>.check{font-size:12px}.walk-summary dd{font-size:13px}.walk-form .condition-choice small{font-size:13px}.walk-form .plan-choice small{font-size:13px}.addon-pick strong{font-size:12px}.detail-timeline p{font-size:13px}
@media(max-width:650px){.walkthrough-page .request-intro h2{font-size:28px}.walkthrough-page .request-form .row{display:grid;grid-template-columns:1fr;gap:13px}.walkthrough-page .request-form>.check{line-height:1.6}.walk-form .condition-choice small,.walk-form .plan-choice small{font-size:12px}.walk-summary dd{font-size:12px}.detail-timeline p{font-size:12px}}
body.site.walkthrough-page .request-form{padding:0;border-radius:0}.walkthrough-page .request-form fieldset>label{margin-bottom:14px}.walkthrough-page .request-form .choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.walkthrough-page .request-form .choice{min-width:0;justify-content:center}
@media(max-width:650px){.walk-form .plan-tag{display:none}.walk-form .plan-choice{padding:16px 18px}.walk-form .plan-choice strong{margin-top:0}.walk-form .plan-choice>input{top:17px}.walkthrough-page .request-form .row{margin-bottom:14px}}
.estimate-journey [hidden]{display:none!important}
.walkthrough-page .walk-request{scroll-margin-top:90px}.walkthrough-page .request-form [role=alert]{outline:none}
/* Let each question finish before its navigation; never cover a field with a button bar. */
.walk-navigation{position:static}
@media(min-width:651px){.journey-top .journey-kicker,.journey-top>div>p:last-child{display:none}body.site .journey-top h1{font-size:34px;margin:0}.step-heading{position:relative;padding-right:48px}.step-heading .step-icon{position:absolute;right:0;top:0;margin:0}.walk-navigation{padding:18px 0}.walk-step[data-step="0"] .soft-note{margin-top:18px}}
