:where(:root){--c-primary: #2f4637;--c-primary-fg: #fff;--c-primary-soft: #e8ede7;--c-accent: #a8865b;--c-bg: #f5f3ee;--c-surface: #fff;--c-ink: #1c211e;--c-muted: #6a6f69;--c-border: #e2ded5;--radius: 14px;--font-display: Georgia, serif;--font-body: system-ui, sans-serif}:root{--c-danger: #b3261e;--c-danger-soft: #fbeceb;--c-warn-soft: #f7f0e4;--shadow-sm: 0 1px 2px rgb(28 33 30 / .06);--shadow-md: 0 1px 2px rgb(28 33 30 / .04), 0 8px 24px -8px rgb(28 33 30 / .12);--ease: cubic-bezier(.2, .7, .2, 1);--gutter: 16px;--tap: 52px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-height:100vh;min-height:100dvh;background:var(--c-bg);color:var(--c-ink);font-family:var(--font-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}.is-embedded body{min-height:0}h1,h2,h3,p{margin:0}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--c-primary)}:focus-visible{outline:2px solid var(--c-primary);outline-offset:3px}[tabindex="-1"]:focus{outline:none}.seo-intro{max-width:640px;margin:0 auto;padding:96px var(--gutter) 48px;display:grid;gap:16px;color:var(--c-muted)}.seo-intro h1{font-family:var(--font-display);font-weight:400;font-size:40px;line-height:1.05;color:var(--c-ink)}.app{min-height:inherit;display:flex;flex-direction:column}.header{border-bottom:1px solid var(--c-border);background:color-mix(in srgb,var(--c-bg) 88%,transparent);backdrop-filter:saturate(1.2) blur(8px);position:sticky;top:0;z-index:10}.is-embedded .header{position:static}.header__inner{max-width:1040px;margin:0 auto;padding:12px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:12px}.header__name{font-family:var(--font-display);font-size:22px;letter-spacing:.01em}.header__logo{display:block;height:32px;width:auto}.header__phone{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;border-radius:999px;border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-ink);text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap;transition:border-color .2s}.header__phone:hover{border-color:var(--c-primary)}.header__phone svg{color:var(--c-primary)}@media(max-width:359px){.header__phone span{display:none}.header__phone{width:40px;padding:0;justify-content:center}}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--c-accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--tap);padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:600;font-size:16px;text-decoration:none;transition:background-color .2s,border-color .2s,transform .15s var(--ease),box-shadow .2s,opacity .2s;-webkit-tap-highlight-color:transparent}.btn:active:not(:disabled){transform:scale(.98)}.btn--primary{background:var(--c-primary);color:var(--c-primary-fg);box-shadow:0 6px 16px -6px color-mix(in srgb,var(--c-primary) 60%,transparent)}.btn--primary:hover:not(:disabled){background:color-mix(in srgb,var(--c-primary) 88%,black)}.btn--primary:disabled{background:color-mix(in srgb,var(--c-primary) 30%,var(--c-bg));box-shadow:none;cursor:not-allowed}.btn--quiet:disabled{opacity:.55}.btn--ghost{background:transparent;color:var(--c-ink);border-color:var(--c-border)}.btn--ghost:hover{border-color:var(--c-ink)}.btn--xl{min-height:58px;padding:0 28px;font-size:17px}.btn--block{width:100%}.link{display:inline-flex;align-items:center;gap:6px;padding:8px 0;border:0;background:none;color:var(--c-primary);font-weight:600;font-size:15px;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.nowrap{white-space:nowrap}@media(max-width:399px){.hide-xs{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.btn--xl{font-size:15px;padding:0 18px}}.intro{width:100%;max-width:1040px;margin:0 auto;padding:32px var(--gutter) 48px;display:grid;gap:32px;animation:fade-up .5s var(--ease) both}.intro__text{display:grid;gap:18px;justify-items:start}.intro__title{font-family:var(--font-display);font-weight:400;font-size:clamp(36px,9vw,60px);line-height:1.02;letter-spacing:-.01em;text-wrap:balance}.intro__subtitle{font-size:17px;color:var(--c-muted);max-width:34em;text-wrap:pretty}.intro .btn--xl{margin-top:6px}.intro__note{font-size:14px;color:var(--c-muted)}.trust{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.trust li{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:var(--c-surface);border:1px solid var(--c-border);font-size:14px;font-weight:500}.trust svg{color:var(--c-primary)}.intro__visual{border-radius:calc(var(--radius) + 6px);background:var(--c-surface);border:1px solid var(--c-border);padding:14px;box-shadow:var(--shadow-md)}.intro__seo{font-size:14px;color:var(--c-muted);border-top:1px solid var(--c-border);padding-top:20px;max-width:60em}.plan{display:block;width:100%;height:auto;max-height:200px}.plan__frame{fill:var(--c-bg);stroke:var(--c-border)}.plan__deck{fill:color-mix(in srgb,var(--c-accent) 18%,var(--c-surface));stroke:var(--c-accent)}.plan__deck-line{stroke:color-mix(in srgb,var(--c-accent) 50%,transparent)}.plan__path{fill:none;stroke:color-mix(in srgb,var(--c-accent) 45%,var(--c-border));stroke-width:12;stroke-linecap:round}.plan__lawn{fill:var(--c-primary-soft);stroke:color-mix(in srgb,var(--c-primary) 35%,transparent)}.plan__tree{fill:color-mix(in srgb,var(--c-primary) 14%,transparent);stroke:var(--c-primary);stroke-dasharray:3 3}.plan__trunk{fill:var(--c-primary)}.plan__shrub{fill:color-mix(in srgb,var(--c-primary) 30%,transparent)}.plan__tag rect{fill:var(--c-surface);stroke:var(--c-border);filter:drop-shadow(0 4px 8px rgb(0 0 0 / .08))}.plan__tag-small{font:600 9px var(--font-body);letter-spacing:.12em;text-transform:uppercase;fill:var(--c-accent)}.plan__tag-big{font:400 15px var(--font-display);fill:var(--c-ink)}@media(min-width:860px){.intro{grid-template-columns:1.15fr 1fr;align-items:center;gap:56px;padding-top:72px}.intro__visual{order:0;padding:20px}.plan{max-height:none}.intro__seo{grid-column:1 / -1}}.flow{width:100%;max-width:760px;margin:0 auto;padding:20px var(--gutter) 0;flex:1;display:flex;flex-direction:column}.progress{display:grid;gap:8px;margin-bottom:24px}.progress__label{font-size:13px;font-weight:600;color:var(--c-muted);font-variant-numeric:tabular-nums}.progress__track{height:4px;border-radius:99px;background:var(--c-border);overflow:hidden}.progress__fill{height:100%;border-radius:inherit;background:var(--c-primary);transition:width .45s var(--ease)}.step{flex:1;display:flex;flex-direction:column;animation:step-in-forward .38s var(--ease) both}.step--back{animation-name:step-in-back}.step__head{display:grid;gap:8px;margin-bottom:22px}.step__title{font-family:var(--font-display);font-weight:400;font-size:clamp(28px,7vw,40px);line-height:1.08;text-wrap:balance}.step__helper{color:var(--c-muted);font-size:15px}.step__body{flex:1}.step__nav{position:sticky;bottom:0;margin:24px calc(var(--gutter) * -1) 0;padding:12px var(--gutter) calc(12px + env(safe-area-inset-bottom));display:flex;justify-content:space-between;gap:12px;background:linear-gradient(to top,var(--c-bg) 70%,transparent);z-index:5}.step__nav .btn--ghost{padding:0 16px}.step__nav .btn--primary{flex:1;max-width:320px}@media(min-width:640px){.flow{padding-top:40px}.step__nav{position:static;margin:32px 0 48px;padding:0;background:none}.step__nav .btn--primary{flex:0 1 auto;min-width:200px}}.choices{display:grid;gap:10px}@media(min-width:560px){.choices--two{grid-template-columns:1fr 1fr}.choices--grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:760px){.choices--grid{grid-template-columns:repeat(3,1fr)}}.choice{position:relative;display:flex;align-items:center;gap:14px;width:100%;min-height:64px;padding:14px 44px 14px 16px;text-align:left;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:border-color .2s,box-shadow .2s,background-color .2s,transform .15s var(--ease);-webkit-tap-highlight-color:transparent}.choice:hover{border-color:color-mix(in srgb,var(--c-primary) 45%,var(--c-border));box-shadow:var(--shadow-md)}.choice:active{transform:scale(.99)}.choice.is-selected{border-color:var(--c-primary);background:color-mix(in srgb,var(--c-primary-soft) 55%,var(--c-surface));box-shadow:0 0 0 1px var(--c-primary) inset,var(--shadow-sm)}.choice__icon{flex:none;display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--c-bg);color:var(--c-primary);transition:background-color .2s,color .2s}.choice.is-selected .choice__icon{background:var(--c-primary);color:var(--c-primary-fg)}.choice__text{display:grid;gap:2px;min-width:0}.choice__label{font-weight:600;font-size:16px;line-height:1.3}.choice__desc{font-size:14px;color:var(--c-muted);line-height:1.4}.choice__mark{position:absolute;right:14px;top:50%;translate:0 -50%;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--c-border);color:transparent;transition:all .2s var(--ease)}.choice__mark--box{border-radius:6px}.choice.is-selected .choice__mark{background:var(--c-primary);border-color:var(--c-primary);color:var(--c-primary-fg)}.choice--compact{min-height:58px;padding-block:10px}.choice--compact .choice__icon{width:38px;height:38px;border-radius:10px}.choice--large{padding:18px 48px 18px 18px}@media(min-width:560px){.choices--two .choice--large{flex-direction:column;align-items:flex-start;gap:18px;min-height:168px;padding:22px}.choices--two .choice--large .choice__mark{top:22px;translate:0 0}.choices--two .choice--large .choice__icon{width:56px;height:56px;border-radius:14px}.choices--two .choice--large .choice__label{font-size:18px}}.recap{margin:0;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.recap__row{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:14px 16px;border-top:1px solid var(--c-border)}.recap__row:first-child{border-top:0}.recap dt{grid-column:1;font-size:13px;color:var(--c-muted)}.recap dd{grid-column:1;margin:0;font-weight:600}.recap__edit{grid-column:2;grid-row:1 / span 2;align-self:center;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-radius:999px;border:1px solid transparent;background:none;color:var(--c-primary);font-size:14px;font-weight:600}.recap__edit:hover{border-color:var(--c-border)}@media(max-width:380px){.recap__edit span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}.result{width:100%;max-width:920px;margin:0 auto;padding:28px var(--gutter) 120px;display:grid;gap:16px}.result__hero{position:relative;display:grid;gap:14px;padding:28px 20px;border-radius:calc(var(--radius) + 6px);background:var(--c-primary);color:var(--c-primary-fg);overflow:hidden;animation:fade-up .5s var(--ease) both}.result__hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(to right,rgb(255 255 255 / .06) 1px,transparent 1px),linear-gradient(to bottom,rgb(255 255 255 / .06) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to left,black,transparent 70%);pointer-events:none}.result__hero>*{position:relative;z-index:1}.result__hero .eyebrow{color:color-mix(in srgb,var(--c-primary-fg) 70%,var(--c-accent))}.result__title{font-size:18px;font-weight:500;opacity:.92}.result__range{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:14px;font-family:var(--font-display);font-size:clamp(40px,11vw,76px);line-height:1;letter-spacing:-.01em;font-variant-numeric:lining-nums;animation:fade-up .6s .1s var(--ease) both}.result__dash{opacity:.55}.result__disclaimer{font-size:14px;opacity:.82;max-width:44em}.result__fit{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;background:#ffffff1a;font-size:15px;max-width:44em}.result__fit svg{flex:none;margin-top:2px}.result__grid{display:grid;gap:16px}@media(min-width:760px){.result{padding-top:40px;gap:20px}.result__hero{padding:44px 44px 40px}.result__grid{grid-template-columns:1fr 1fr;gap:20px}}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:calc(var(--radius) + 4px);padding:22px 20px;box-shadow:var(--shadow-sm);animation:fade-up .5s .15s var(--ease) both}@media(min-width:760px){.card{padding:28px}}.card__title{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--c-muted);margin-bottom:14px}.summary__project{font-family:var(--font-display);font-size:28px;line-height:1.1}.summary__meta{margin-top:6px;color:var(--c-muted)}.summary__services{list-style:none;margin:16px 0 10px;padding:0;display:grid;gap:8px}.summary__services li{display:flex;align-items:center;gap:10px;font-weight:500}.summary__services svg{flex:none;color:var(--c-primary)}.breakdown__list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.breakdown__row{display:flex;justify-content:space-between;gap:12px;font-size:15px;margin-bottom:6px}.breakdown__pct{color:var(--c-muted);font-variant-numeric:tabular-nums}.breakdown__bar{height:6px;border-radius:99px;background:var(--c-bg);overflow:hidden}.breakdown__bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(to right,var(--c-primary),color-mix(in srgb,var(--c-primary) 70%,var(--c-accent)));transform-origin:left;animation:grow .8s .3s var(--ease) both}.breakdown__note{margin-top:16px;font-size:13px;color:var(--c-muted)}.result__form{scroll-margin-top:80px}.lead{border-color:color-mix(in srgb,var(--c-primary) 30%,var(--c-border));box-shadow:var(--shadow-md)}.lead__title{font-family:var(--font-display);font-weight:400;font-size:clamp(26px,6vw,34px);line-height:1.1;text-wrap:balance}.lead__subtitle{margin-top:10px;color:var(--c-muted);max-width:40em}.lead__form{margin-top:22px;display:grid;gap:16px}.field-row{display:grid;gap:16px}@media(min-width:560px){.field-row{grid-template-columns:1fr 1fr}}.field{display:grid;gap:6px;align-content:start}.field label{font-size:14px;font-weight:600}.field__optional{font-weight:400;color:var(--c-muted)}.field input,.field textarea{width:100%;min-height:var(--tap);padding:12px 14px;border-radius:12px;border:1px solid var(--c-border);background:var(--c-bg);font-size:16px;transition:border-color .2s,background-color .2s,box-shadow .2s}.field textarea{resize:vertical;min-height:96px}.field input:hover,.field textarea:hover{border-color:color-mix(in srgb,var(--c-ink) 30%,var(--c-border))}.field input:focus,.field textarea:focus{outline:none;background:var(--c-surface);border-color:var(--c-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-primary) 18%,transparent)}.field.is-invalid input,.field.is-invalid textarea{border-color:var(--c-danger);background:var(--c-danger-soft)}.field__error{font-size:14px;color:var(--c-danger);animation:fade-up .25s var(--ease) both}.checkbox{position:relative;display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid var(--c-border);font-size:15px;cursor:pointer;transition:border-color .2s,background-color .2s}.checkbox:hover{border-color:color-mix(in srgb,var(--c-primary) 45%,var(--c-border))}.checkbox input{position:absolute;opacity:0;width:22px;height:22px;margin:0}.checkbox__box{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:6px;border:1.5px solid var(--c-border);background:var(--c-surface);color:transparent;transition:all .2s var(--ease)}.checkbox input:checked+.checkbox__box{background:var(--c-primary);border-color:var(--c-primary);color:var(--c-primary-fg)}.checkbox input:focus-visible+.checkbox__box{outline:2px solid var(--c-primary);outline-offset:2px}.checkbox:has(input:checked){border-color:var(--c-primary);background:color-mix(in srgb,var(--c-primary-soft) 45%,transparent)}.form-error{padding:12px 14px;border-radius:12px;background:var(--c-danger-soft);color:var(--c-danger);font-size:15px}.lead__privacy{display:flex;gap:8px;font-size:13px;color:var(--c-muted)}.lead__privacy svg{flex:none;margin-top:1px}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.success{display:grid;justify-items:center;gap:14px;text-align:center;padding-block:40px}.success__icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--c-primary);color:var(--c-primary-fg);animation:pop .5s var(--ease) both}.success__title{font-family:var(--font-display);font-weight:400;font-size:clamp(26px,6vw,34px);line-height:1.1;max-width:18em;text-wrap:balance}.success p{color:var(--c-muted);max-width:34em}.demo-lead{width:100%;margin-top:12px;text-align:left;border-top:1px dashed var(--c-border);padding-top:16px}.demo-lead summary{cursor:pointer;font-weight:600;color:var(--c-primary);text-align:center;padding:8px}.demo-lead__note{margin:8px 0 16px;font-size:14px}.demo-lead__label{margin:16px 0 8px;font-size:13px;font-weight:700;color:var(--c-ink)!important}.demo-lead__email{border-radius:12px;overflow:hidden;border:1px solid var(--c-border)}.demo-lead__email>div{padding:12px!important}.demo-lead__json{margin:0;max-height:320px;overflow:auto;padding:12px;border-radius:12px;background:var(--c-bg);font-size:12px;line-height:1.45}.restart{justify-self:center;border:0;background:none;padding:12px;color:var(--c-muted);font-size:14px;text-decoration:underline;text-underline-offset:3px}.sticky-cta{position:fixed;left:0;right:0;bottom:0;padding:12px var(--gutter) calc(12px + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--c-bg) 65%,transparent);z-index:20;animation:fade-up .4s .6s var(--ease) both}@media(min-width:760px){.sticky-cta{display:none}}.is-embedded .sticky-cta{display:none}.spin{animation:spin .8s linear infinite}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}}@keyframes step-in-forward{0%{opacity:0;transform:translate(16px)}}@keyframes step-in-back{0%{opacity:0;transform:translate(-16px)}}@keyframes grow{0%{transform:scaleX(0)}}@keyframes pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.06)}}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}}
