:root{--ink:#111916;--muted:#66736d;--orange:#ff6b2a;--orange-soft:#fff1e9;--paper:#f7f6f1;--line:#1119161f}*{box-sizing:border-box}body{color:var(--ink);background:var(--paper);margin:0;font-family:Inter,Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}.app{background:linear-gradient(115deg,#ff6b2a14,#0000 34%),radial-gradient(circle at 18% 22%,#ffffffeb,#0000 30%),#f5f3ee;min-height:100svh;overflow-x:hidden}.app.is-complete{color:#fff;background:radial-gradient(circle at 22% 18%,#ff6b2a33,#0000 32%),linear-gradient(135deg,#070a09,#101714 62%,#080a09)}.topbar{justify-content:space-between;align-items:center;padding:28px clamp(22px,4.5vw,64px) 12px;display:flex}.topbar a{color:inherit;font-size:15px;font-weight:760;text-decoration:none}.logo{align-items:center;gap:10px;display:inline-flex;font-size:27px!important}.logo span{width:38px;height:38px;color:var(--orange);border:2px solid;border-radius:50%;place-items:center;display:grid}.stage{grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr);align-items:stretch;gap:clamp(26px,5vw,78px);min-height:calc(100svh - 78px);padding:18px clamp(22px,4.5vw,64px) 46px;display:grid}.visual-panel{background:#ffffffad;border:1px solid #11191614;border-radius:14px;align-self:stretch;overflow:hidden;box-shadow:0 34px 80px #1119161f}.app.step-2 .visual-panel,.app.step-2 .flow-step{max-height:calc(100svh - 136px)}.app.step-2 .flow-step{scrollbar-width:none;overflow-y:auto}.app.step-2 .flow-step::-webkit-scrollbar{display:none}.app.is-complete .visual-panel{background:#ffffff0f;border-color:#ffffff1a;align-self:start;box-shadow:0 34px 90px #00000057}.app.is-complete .stage{grid-template-columns:minmax(0,1.16fr) minmax(430px,.84fr);align-items:start}.app.step-1 .visual-panel{align-self:center;max-height:min(720px,100svh - 148px)}.image-shell{aspect-ratio:1.62;background:#121916;position:relative;overflow:hidden}.app.step-2 .image-shell{aspect-ratio:1.54}.app.is-complete .image-shell{aspect-ratio:1.42;min-height:min(360px,100svh - 300px)}.image-shell img,.map-image,.map-static-image{width:100%;height:100%;position:absolute;inset:0}.image-shell img{object-fit:cover;color:#0000;font-size:0;display:block}.map-static-image{object-fit:fill}.map-image{background:#101714}.rendered-overlay{pointer-events:none;z-index:2;background:linear-gradient(#0609081f,#0609088f);position:absolute;inset:0}.array-wrap{pointer-events:none;position:absolute;inset:0}.array-wrap span{left:var(--x,50%);top:var(--y,45%);width:var(--w,clamp(12px, 2.4vw, 22px));height:var(--h,auto);aspect-ratio:.68;animation:.36s forwards pop;animation-delay:calc(var(--i) * 18ms);opacity:0;transform:translate(-50%, -50%) rotate(var(--r,-13deg));background:linear-gradient(90deg,#ffffff24 1px,#0000 1px) 0 0/50% 100%,linear-gradient(#ffffff1f 1px,#0000 1px) 0 0/100% 34%,linear-gradient(135deg,#081f2a,#0b4f63 48%,#071116);border:1px solid #a9dbe038;border-radius:2px;position:absolute;box-shadow:0 3px 10px #00000057}.array-wrap.is-vision span{opacity:0;min-width:9px;min-height:14px}@keyframes pop{to{opacity:1}}.preview-pill{color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#060908b3;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:8px;max-width:calc(100% - 36px);padding:12px 14px;font-size:13px;font-weight:800;display:inline-flex;position:absolute;bottom:22px;left:18px}.image-accordion{padding:0}.image-actions{gap:8px;padding:10px;display:grid}.panel-lite{color:#fff;background:#ffffff12;border:1px solid #ffffff1c;border-radius:10px;gap:8px;padding:11px 14px;display:grid}.panel-lite>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.panel-lite span,.panel-lite strong{align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:820;display:inline-flex}.panel-lite span{color:#ffffffc2}.panel-lite svg{color:var(--orange)}.panel-lite p{color:#ffffffad;margin:0;font-size:13px;line-height:1.4}.panel-lite p strong{color:#ffb089}.offset-meter{gap:6px;padding-top:2px;display:grid}.offset-meter>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.offset-meter>div span{color:#ffffffa8;font-size:12px;font-weight:780}.offset-meter>div strong{color:#fff;font-size:16px;font-weight:880}.offset-meter i{background:#ffffff24;border-radius:999px;height:5px;display:block;overflow:hidden}.offset-meter b{background:linear-gradient(90deg, var(--orange), #ffb089);border-radius:inherit;height:100%;display:block}.offset-meter p{font-size:11px;line-height:1.25}.visual-copy{gap:14px;padding:clamp(24px,3.4vw,42px);display:grid}.app.step-2 .visual-copy{padding:28px clamp(24px,3vw,36px)}.app.step-1 .visual-copy{padding:clamp(22px,2.8vw,34px)}.app.step-1 .visual-copy h1{font-size:clamp(34px,3.25vw,52px)}.visual-copy p,.eyebrow{color:var(--orange);letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:12px;font-weight:860}.visual-copy h1,.flow-step h2{letter-spacing:0;max-width:780px;margin:0;font-size:clamp(34px,4vw,60px);line-height:.98}.flow-step h2{font-size:clamp(34px,3.2vw,50px)}.visual-metrics,.info-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.metric,.info-grid article{background:#ffffffa3;border:1px solid #11191614;border-radius:10px;gap:5px;min-width:0;padding:14px;display:grid}.app.is-complete .metric,.app.is-complete .info-grid article{background:#ffffff12;border-color:#ffffff1a}.metric span,.info-grid span{color:var(--muted);font-size:12px;font-weight:720}.metric strong,.info-grid strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.app.is-complete .metric span,.app.is-complete .info-grid span{color:#ffffff94}.flow-card{place-self:center;width:min(100%,570px);position:relative}.app.is-complete .flow-card{align-self:start;width:min(100%,590px)}.app.step-2 .flow-card{align-self:stretch;align-items:start;display:grid}.progress-dots{justify-content:center;gap:9px;margin-bottom:16px;display:flex}.progress-dots span{background:#d5dad3;border-radius:50%;width:8px;height:8px}.progress-dots .active{background:var(--ink)}.app.is-complete .progress-dots span{background:#ffffff2e}.app.is-complete .progress-dots .active{background:var(--orange)}.app.is-complete .progress-dots{margin-bottom:0;position:absolute;top:-28px;left:0;right:0}.flow-step{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffc7;border:1px solid #11191614;border-radius:14px;gap:16px;padding:clamp(26px,3.4vw,40px);display:grid;box-shadow:0 28px 80px #1119161f}.app.step-2 .flow-step{align-content:start}.app.is-complete .flow-step{background:#ffffff12;border-color:#ffffff1a;gap:8px;padding:clamp(16px,1.9vw,24px);box-shadow:0 28px 80px #00000057}.app.is-complete .flow-step h2{font-size:clamp(28px,2.35vw,38px);line-height:1}.app.is-complete .lede{font-size:14px;line-height:1.38}.lede{color:var(--muted);margin:0;font-size:17px;line-height:1.45}.app.is-complete .lede{color:#ffffffb3}.lede strong{color:#ffb089}.input-label,.choice-section>span{color:#5d6963;font-size:13px;font-weight:820}.app.is-complete .input-label,.app.is-complete .choice-section>span{color:#ffffffad}.search-field{background:#fff9f4;border:1px solid #ff6b2a2e;border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:12px;min-height:58px;padding:0 18px;display:grid}.address-wrap{position:relative}.address-wrap.is-selected .search-field{background:#f5fff8;border-color:#265f4c42}.search-field svg{color:#55635d}.search-field input,.line-input,.compact-panel input,.select-field input,.select-field select,.schedule-panel input,.schedule-panel select,.schedule-panel textarea{width:100%;color:inherit;background:0 0;border:0;outline:0;font-weight:750}.address-suggestions{z-index:8;background:#fffdf9;border:1px solid #ff6b2a38;border-radius:10px;margin-top:8px;position:absolute;left:0;right:0;overflow:hidden;box-shadow:0 22px 60px #11191629}.address-suggestions button{width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #11191614;gap:3px;padding:14px 16px;display:grid}.address-suggestions button:hover,.address-suggestions button:focus-visible{background:var(--orange-soft);outline:0}.address-suggestions strong{font-size:14px}.address-suggestions span,.address-suggestions small{color:var(--muted);font-size:12px;font-weight:720}.address-suggestions small{text-align:right;padding:10px 16px;display:block}.field-help{color:var(--muted);margin:-8px 0 0;font-size:12px;font-weight:680}.field-help.is-error{color:#c75124}.choice-section,.choice-row,.choice-grid{gap:8px;display:grid}.choice-row{grid-template-columns:repeat(3,1fr)}.choice-grid{grid-template-columns:repeat(2,1fr)}.choice{color:#56625d;cursor:pointer;background:#ffffffc2;border:1px solid #1119161f;border-radius:8px;min-height:48px;font-weight:760}.choice.is-selected{color:var(--ink);background:var(--orange-soft);border-color:#ff6b2a80}.compact-panel,.slider-card,.schedule-panel{background:#ffffff9e;border:1px solid #11191614;border-radius:10px;gap:14px;padding:16px;display:grid}.app.is-complete .slider-card,.app.is-complete .schedule-panel{background:#ffffff14;border-color:#ffffff1f}.question-card{background:#fff9;border:1px solid #11191614;border-radius:10px;gap:14px;padding:16px;display:grid}.question-card h3{margin:0;font-size:18px}.form-grid{gap:10px;display:grid}.select-field,.number-field{gap:8px;display:grid}.select-field span,.number-field span{color:var(--muted);font-size:12px;font-weight:780}.select-field select,.select-field input{min-height:44px;color:var(--ink);background:#fff;border:1px solid #1119161f;border-radius:8px;padding:0 12px}.app.is-complete .select-field select,.app.is-complete .select-field input{color:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#ffffff12;border-color:#ffffff24}.app.is-complete .select-field select option{color:var(--ink);background:#fffdf9}.utility-field{margin-top:2px}.segmented,.preference-grid{gap:8px;display:grid}.segmented{grid-template-columns:1fr 1fr}.segmented button,.preference-grid button{color:#56625d;cursor:pointer;background:#fff;border:1px solid #1119161f;border-radius:8px;min-height:42px;font-weight:760}.segmented button.is-active,.preference-grid button.is-selected{color:var(--ink);background:var(--orange-soft);border-color:#ff6b2a7a}.number-field{background:#fff;border:1px solid #1119161a;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:end;gap:8px 10px;padding:14px}.number-field span{grid-column:1/-1}.number-field strong,.number-field em{color:var(--muted);font-style:normal;font-weight:760}.number-field input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:20px;font-weight:850}.schedule-panel.is-primary-action{background:linear-gradient(135deg,#ff6b2a2e,#ffffff14),#ffffff14;border-color:#ff6b2a52;gap:8px;padding:12px;position:relative}.schedule-panel.is-primary-action:before{border-radius:inherit;content:"";pointer-events:none;border:1px solid #ffffff1f;position:absolute;inset:0}.schedule-panel p{color:#ffffffa8;margin:0;font-size:11px;line-height:1.35}.compact-panel label,.slider-card div{justify-content:space-between;align-items:center;gap:18px;display:flex}.compact-panel label span,.slider-card span{color:var(--muted);font-weight:720}.compact-panel input{text-align:right;max-width:110px}.line-input{border-bottom:1px solid var(--line);min-height:44px}.contact-consent{color:var(--muted);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;margin-top:2px;font-size:11px;font-weight:650;line-height:1.5;display:grid}.contact-consent input{width:17px;height:17px;accent-color:var(--orange);margin:1px 0 0}.contact-consent a{color:var(--ink);text-underline-offset:2px;font-weight:780;text-decoration-thickness:1px}.button-row{grid-template-columns:.85fr 1.15fr;gap:10px;display:grid}.primary,.secondary{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:50px;font-weight:820;display:inline-flex}.primary{color:#fff;background:var(--orange)}.primary:disabled{cursor:not-allowed;opacity:.45}.secondary{color:var(--ink);background:#ebece7}.success{color:#fff;background:#ffffff1f;border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.render-loader{text-align:center;align-content:center;justify-items:center;gap:14px;min-height:420px;display:grid}.render-loader svg{color:var(--orange);animation:4s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.slider-root{touch-action:none;align-items:center;width:100%;height:24px;display:flex;position:relative}.slider-track{background:#ffffff2e;border-radius:999px;flex-grow:1;height:4px;position:relative}.slider-range{background:var(--orange);border-radius:999px;height:100%;position:absolute}.slider-thumb{background:var(--orange);border:3px solid #fff;border-radius:50%;width:18px;height:18px;display:block;box-shadow:0 8px 22px #ff6b2a57}.info-grid{grid-template-columns:1fr}.info-grid article{grid-template-columns:auto minmax(0,.8fr) minmax(0,1.2fr);align-items:center}.info-grid svg{color:var(--orange)}.schedule-panel h3{align-items:center;gap:8px;margin:0;font-size:15px;display:flex}.schedule-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.preference-grid{grid-template-columns:repeat(2,1fr)}.preference-grid button{color:#ffffffc2;background:#ffffff14;border-color:#ffffff1f}.app.is-complete .preference-grid button{min-height:36px}.preference-grid button.is-selected{color:#fff;background:#ff6b2a3d;border-color:#ff6b2a99}.schedule-panel input,.schedule-panel select,.schedule-panel textarea{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-bottom:1px solid #ffffff2e;min-height:34px;padding:0 0 8px}.schedule-panel textarea{resize:vertical;min-height:42px}.confirm-check{color:#ffffffc2;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 10px;display:grid}.confirm-check input{width:18px;height:18px;accent-color:var(--orange)}.confirm-check span{gap:2px;font-size:11px;line-height:1.35;display:grid}.source-picker{gap:6px;display:grid;position:relative}.source-picker>span{color:#ffffffad;font-size:12px;font-weight:780}.source-picker-trigger{color:#fff;cursor:pointer;text-align:left;background:#ffffff12;border:1px solid #ffffff24;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;min-height:38px;padding:0 10px;font-weight:780;display:flex}.source-picker-trigger svg{flex:none}.source-options{z-index:12;background:#fffdf9;border:1px solid #ff6b2a57;border-radius:10px;max-height:220px;padding:6px;position:absolute;bottom:calc(100% + 8px);left:0;right:0;overflow:auto;box-shadow:0 20px 50px #00000061}.source-options button{width:100%;min-height:34px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;padding:7px 9px;font-size:13px;font-weight:720;display:block}.source-options button:hover,.source-options button:focus-visible,.source-options button.is-selected{background:var(--orange-soft);outline:0}.confirm-check strong{color:#fff;font-size:12px}.confirm-check svg{color:var(--orange)}.saved-note{color:#ffffff94;text-align:center;margin:0;font-size:13px}.saved-note.is-error{color:#ffb089}.preview-accordion{gap:10px;display:grid}.preview-accordion-item{background:#ffffff12;border:1px solid #ffffff1c;border-radius:10px;overflow:hidden}.preview-trigger{color:#fff;cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;width:100%;padding:12px 14px;display:grid}.preview-trigger span,.preview-trigger strong{align-items:center;gap:8px;min-width:0;display:inline-flex}.preview-trigger span{color:#ffffffc2;font-size:14px;font-weight:760}.preview-trigger strong{color:#fff;white-space:nowrap;font-size:13px}.preview-trigger svg{color:var(--orange)}.preview-trigger>svg:last-child{color:#ffffff94;transition:transform .16s}.preview-trigger[data-state=open]>svg:last-child{transform:rotate(180deg)}.preview-content{gap:12px;padding:0 14px 14px;display:grid}.preview-content p{color:#ffffffad;margin:0;font-size:14px;line-height:1.45}.preview-content p strong{color:#ffb089}.data-rows{border-top:1px solid #ffffff1a;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8px 12px;padding-top:10px;display:grid}.data-rows span{color:#ffffff85;font-size:12px;font-weight:720}.data-rows strong{color:#ffffffdb;font-size:12px}.result-summary{gap:10px;display:grid}.result-summary article{background:#ffffff0e;border:1px solid #ffffff17;border-radius:10px;grid-template-columns:auto minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:10px;min-width:0;padding:12px 14px;display:grid}.result-summary svg{color:var(--orange)}.result-summary span{color:#ffffff94;font-size:12px;font-weight:720}.result-summary strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}@media (width<=980px){.stage{grid-template-columns:1fr}.app.is-complete .stage{grid-template-columns:minmax(0,1fr) minmax(320px,.88fr);gap:18px;padding-left:18px;padding-right:18px}.flow-card{width:100%}.app.is-complete .image-shell{min-height:360px}}@media (width<=760px){.app.is-complete .stage{grid-template-columns:1fr}.app.is-complete .image-shell{min-height:360px}}@media (width<=640px){.topbar{padding:18px}.topbar>a:last-child{display:none}.stage{padding:10px 16px 28px}.visual-metrics,.choice-row,.choice-grid,.button-row,.schedule-fields{grid-template-columns:1fr}.image-shell{aspect-ratio:1.12}.app.is-complete .image-shell{min-height:360px}.flow-step,.visual-copy{padding:22px}.info-grid article{grid-template-columns:auto 1fr}.info-grid strong{grid-column:2}.preview-trigger,.result-summary article{grid-template-columns:auto 1fr}.preview-trigger strong,.result-summary strong{grid-column:2}}
