:root{--accent:#16A34A;--accent-soft:#F0FDF4;--accent-line:#BBF7D0;--accent-ink:#15803D;--ink:#111111;--body:#374151;--muted:#4B5563;--faint:#6B7280;--fainter:#9CA3AF;--line:#E5E7EB;--line-soft:#F0F0F0;--wash:#F9FAFB;--star:#F59E0B;--danger:#B4241C}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#fff;color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}.brand,.btn,h1,h2{font-family:Poppins,Inter,sans-serif}.topbar{padding:20px 48px;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line-soft)}.topbar,.topbar .brand{display:flex;align-items:center}.topbar .brand{font-weight:700;font-size:15px;gap:11px}.topbar .brand .sep{color:var(--fainter);font-weight:600}.topbar .face{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:0 0 auto}.topbar .phone{font-size:14px;color:var(--faint);text-decoration:none}.topbar .phone:hover{color:var(--ink)}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,460px);grid-gap:72px;gap:72px;align-items:start;max-width:1100px;margin:0 auto;padding:72px 48px}.badge{display:inline-block;background:var(--accent-soft);color:var(--accent-ink);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:6px 14px;border-radius:100px;border:1px solid var(--accent-line);margin-bottom:24px}h1{font-size:clamp(2rem,3.8vw,3.2rem);font-weight:900;line-height:1.1;letter-spacing:-.03em;margin-bottom:20px;overflow-wrap:break-word}h1 em{color:var(--accent);font-style:normal}.sub{font-size:18px;color:var(--muted);line-height:1.7}.checklist,.sub{margin-bottom:40px}.checklist{list-style:none;display:flex;flex-direction:column;gap:14px}.checklist li{display:flex;align-items:flex-start;gap:12px;font-size:15px;color:var(--body)}.checklist .ci{width:22px;height:22px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;color:#fff;font-size:11px;font-weight:800}.testimonial{background:var(--wash);border-radius:16px;padding:24px;border-left:4px solid var(--accent)}.testimonial p{font-size:15px;color:var(--body);line-height:1.7;font-style:italic;margin-bottom:12px}.testimonial cite{font-size:13px;font-weight:600;color:var(--ink);font-style:normal}.card{background:#fff;border:1.5px solid var(--line);border-radius:20px;padding:40px;box-shadow:0 8px 40px rgba(0,0,0,.07);position:-webkit-sticky;position:sticky;top:24px}.card h2{font-size:22px;font-weight:800;margin-bottom:4px;letter-spacing:-.02em}.card .csub{font-size:14px;color:var(--faint);margin-bottom:28px}.field{margin-bottom:16px;display:block}.field .lab{display:block;font-size:11px;font-weight:700;color:var(--body);margin-bottom:6px;text-transform:uppercase;letter-spacing:.07em}input[type=email],input[type=tel],input[type=text],select,textarea{width:100%;font:inherit;font-size:15px;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:14px 15px}input::placeholder,textarea::placeholder{color:var(--fainter)}textarea{min-height:104px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ink)}.btn{width:100%;padding:17px;font-family:Poppins,Inter,sans-serif;font-size:17px;font-weight:800;background:var(--ink);color:#fff;border:none;border-radius:12px;cursor:pointer;transition:transform .15s,box-shadow .15s;margin-top:4px;display:flex;align-items:center;justify-content:center;gap:8px}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px rgba(0,0,0,.25)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.btn.ghost{width:auto;background:#fff;color:var(--faint);border:1.5px solid var(--line);font-size:14px;font-weight:600;padding:12px 18px}.btn.ghost:hover{transform:none;box-shadow:none;border-color:var(--ink);color:var(--ink)}.trust{display:flex;align-items:center;gap:8px;margin-top:14px;justify-content:center;font-size:12px;color:var(--fainter);text-align:center}.trust .stars{color:var(--star)}.progress{display:flex;align-items:center;gap:12px;margin-bottom:24px}.progress .bar{flex:1 1;height:4px;background:var(--line);border-radius:100px;overflow:hidden}.progress .fill{height:100%;background:var(--accent);border-radius:100px;transition:width .35s cubic-bezier(.4,0,.2,1)}.progress .count{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--fainter);white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.q:focus{outline:none}.q h2{font-size:20px;margin-bottom:6px}.q .help{font-size:14px;color:var(--faint)}.options{display:flex;flex-direction:column;gap:10px;margin-top:22px}.opt{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;font:inherit;font-size:15px;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:15px 16px;cursor:pointer;transition:border-color .14s ease,background .14s ease}.opt:hover{border-color:var(--accent)}.opt:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.opt[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.opt .mark{flex:0 0 auto;width:22px;height:22px;margin-top:1px;border:1.5px solid var(--line);border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.opt[aria-pressed=true] .mark{background:var(--accent);border-color:var(--accent)}.opt .body .l{display:block}.opt .body .note{display:block;margin-top:3px;font-size:13.5px;color:var(--faint)}.slider-value{font-size:34px;font-weight:900;font-family:Poppins,sans-serif;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:24px 0 2px}.slider-suffix{font-size:14px;color:var(--faint);margin-bottom:16px}input[type=range]{width:100%;accent-color:var(--accent);height:26px}.slider-ends{display:flex;justify-content:space-between;font-size:12px;color:var(--fainter);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.slider-note{margin-top:16px;font-size:14px;color:var(--faint)}.consent{display:flex;gap:10px;align-items:flex-start;margin:4px 0 18px;font-size:12.5px;color:var(--faint);line-height:1.5}.consent input{margin-top:2px;flex:0 0 auto;width:16px;height:16px;accent-color:var(--accent)}.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.nav{display:flex;gap:10px;align-items:center;margin-top:22px}.nav .btn{flex:1 1}.err{margin:14px 0 0;padding:12px 14px;border-radius:12px;background:#FEF2F2;border:1px solid #fecaca;color:var(--danger);font-size:13.5px}.privacy{margin-top:14px;font-size:12px;color:var(--fainter);text-align:center}.section{max-width:1100px;margin:0 auto;padding:56px 48px;border-top:1px solid var(--line-soft)}.section h2{font-size:clamp(1.4rem,2.6vw,2rem);font-weight:800;letter-spacing:-.025em;margin-bottom:20px;overflow-wrap:break-word}.section .eyebrow{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:14px}.section p{color:var(--muted);line-height:1.7;margin-bottom:14px;max-width:62ch}.bio-row{display:flex;gap:26px;align-items:flex-start}.bio-row .portrait{width:120px;height:120px;border-radius:16px;object-fit:cover;flex:0 0 auto}.steps{list-style:none;display:flex;flex-direction:column;gap:22px;max-width:62ch}.steps li{display:grid;grid-template-columns:30px 1fr;grid-gap:14px;gap:14px}.steps .n{font-size:13px;font-weight:800;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding-top:2px}.steps strong{display:block;margin-bottom:4px}.steps p{font-size:15px;margin:0}.pulse{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:26px;gap:26px;margin-top:8px}.pulse article{background:var(--wash);border-radius:16px;padding:22px 24px}.pulse strong{display:block;margin-bottom:8px}.pulse p{font-size:14.5px;margin:0}.tips{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:26px;gap:26px}.tips article{border-left:3px solid var(--accent);padding-left:18px}.tips .tag{display:block;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--fainter);margin-bottom:7px}.tips strong{display:block;margin-bottom:6px}.tips p{font-size:14.5px;margin:0}footer{background:var(--ink);color:rgba(255,255,255,.4);text-align:center;padding:32px 24px;font-size:13px;line-height:1.8}footer strong{color:rgba(255,255,255,.75)}footer p{margin:0}.wrap{max-width:1100px;margin:0 auto;padding:0 24px;min-width:0}.phoneline{display:flex;align-items:flex-start;gap:11px;margin-top:22px;font-size:15px;color:var(--body);max-width:52ch}.phoneline .dot{flex:0 0 auto;width:9px;height:9px;margin-top:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.worrybox{margin-top:30px;background:var(--wash);border-left:4px solid var(--accent);border-radius:16px;padding:22px 24px;max-width:62ch}.worrybox .tag{display:block;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:9px}.worrybox p{margin-bottom:10px}.worrybox p:last-child{margin-bottom:0}.bio-row .cred{font-size:13.5px;color:var(--fainter);margin-bottom:12px}.chat{max-width:1100px;margin:0 auto;padding:0 48px 48px}.chat-card{background:#fff;border:1.5px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 8px 40px rgba(0,0,0,.07);animation:rise .45s cubic-bezier(.2,.7,.3,1)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.chat-head{display:flex;align-items:center;gap:11px;padding:18px 22px;border-bottom:1px solid var(--line)}.chat-head .dot{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);flex:0 0 auto}.chat-head strong{display:block;font-size:15px;font-weight:700}.chat-head span{display:block;font-size:13px;color:var(--faint)}.chat-log{padding:22px;display:flex;flex-direction:column;gap:11px;max-height:52vh;overflow-y:auto}.bubble{max-width:84%;padding:13px 16px;border-radius:16px;font-size:15px;line-height:1.6}.bubble p{margin:0 0 .5em}.bubble p:last-child{margin:0}.bubble.assistant{align-self:flex-start;background:var(--wash);border-bottom-left-radius:6px}.bubble.homeowner{align-self:flex-end;background:var(--ink);color:#fff;border-bottom-right-radius:6px}.bubble.typing{display:flex;gap:5px;padding:16px}.bubble.typing span{width:7px;height:7px;border-radius:50%;background:var(--accent);opacity:.35;animation:blink 1.3s infinite}.bubble.typing span:nth-child(2){animation-delay:.18s}.bubble.typing span:nth-child(3){animation-delay:.36s}@keyframes blink{0%,60%,to{opacity:.25}30%{opacity:1}}.slots{display:flex;flex-wrap:wrap;gap:8px;padding:0 22px 8px}.slots .btn{flex:1 1 auto}.chat-input{display:flex;gap:9px;padding:16px 22px 20px;border-top:1px solid var(--line)}.chat-input input{flex:1 1}.chat-input .btn{width:auto;padding:14px 22px;font-size:15px}.widget-root{height:100vh;background:#fff}.widget{height:100%;display:flex;flex-direction:column;background:#fff}.widget .chat-head{position:relative;padding-right:46px}.widget .chat-head .close{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:0;font-size:24px;line-height:1;color:var(--fainter);cursor:pointer;padding:4px 8px}.widget .chat-head .close:hover{color:var(--ink)}.widget .chat-log{flex:1 1;max-height:none}@media (max-width:900px){.hero{grid-template-columns:minmax(0,1fr);padding:40px 24px;gap:40px}.topbar{padding:18px 24px}.card{position:static}.chat,.section{padding-left:24px;padding-right:24px}}@media (max-width:640px){body,html{max-width:100vw;overflow-x:clip}h1{font-size:1.85rem}.sub{font-size:16px;margin-bottom:30px}.card{padding:24px 20px;border-radius:16px}.card h2,.q h2{font-size:18px}.checklist,.testimonial{margin-bottom:30px}.topbar .brand{font-size:13.5px}.topbar .face{width:30px;height:30px}.bio-row{flex-direction:column;gap:18px}.bubble{max-width:92%}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}