:root{--bg:#f4f4f1;--bg-sunken:#eaeae5;--surface:#ffffff;--surface-raised:#ffffff;--ink:#1d1f17;--ink-soft:#3a3b2e;--muted:#6a6553;--line:#e5e7eb;--line-strong:#d4d6d0;--accent:#2f5235;--accent-hover:#24412a;--accent-ink:#1e3623;--accent-soft:#e4ebdb;--on-accent:#f7f3e8;--link:#2f5235;--wheat:#a97f2f;--wheat-soft:#f1e6cc;--clay:#9c4a32;--warn-bg:#f4e8c9;--warn-ink:#6e4f12;--danger-bg:#f6e3dc;--danger-ink:#8a3523;--danger-line:#e5bfb1;--ok-bg:#e4ebdb;--ok-ink:#2a4a30;--info-bg:#e6e9e0;--info-ink:#2f3a2c;--sidebar:#1c2a1f;--sidebar-ink:#efe9db;--sidebar-muted:#a9b09c;--sidebar-line:rgba(239,233,219,0.12);--sidebar-active:rgba(217,189,128,0.14);--topo:#3b4a31;--topo-opacity:0.09;--crop-wheat:#e4d09e;--crop-sage:#c4cead;--crop-loam:#d6c4a2;--crop-green:#a9b98f;--crop-lawn:#dfe5c6;--furrow:rgba(60,52,30,0.22);--hedge:#55623f;--road:#f6f0e1;--plat-ground:#e9e1cc;--shadow:0 1px 2px rgba(16,24,40,0.03),0 12px 40px -8px rgba(16,24,40,0.05);--shadow-lg:0 2px 4px rgba(16,24,40,0.03),0 24px 64px -12px rgba(16,24,40,0.05);--btn-top:#3b6743;--btn-bottom:#2f5235;--btn-top-hover:#44744c;--btn-bottom-hover:#2a4a30;--btn-border:#284a2e;--btn-glow:0 1px 2px rgba(47,82,53,0.25),0 6px 18px -4px rgba(47,82,53,0.45);--btn-glow-hover:0 1px 2px rgba(47,82,53,0.3),0 10px 24px -6px rgba(47,82,53,0.55);--bs-sky-top:#e6ede2;--bs-sky-bottom:#f7f7f2;--bs-grid:rgba(47,82,53,0.06);--bs-sun:#f1e3bc;--bs-cloud:#ffffff;--bs-outline:rgba(40,40,30,0.35);--bs-wood:#dcbb7e;--bs-wood-dark:#a5803b;--bs-concrete:#d3d0c6;--bs-siding:#fbfaf5;--bs-siding-sage:#cfd9c1;--bs-barn:#a5452e;--bs-barn-dark:#7d3221;--bs-lap:rgba(40,40,30,0.14);--bs-roof:#3c4a40;--bs-trim:#fbfaf5;--bs-glass:#c6d8dc;--bs-glow:#f6d68a;--bs-water:#92c6c0;--bs-leaf:#74905a;--bs-leaf-dark:#587244;--bs-trunk:#6b5537;--bs-crane:#d2a33c;--bs-crane-dark:#3a3b2e;--auth-sky-mid:#ebf1e7;--auth-sky-low:#d2e1ca;--ts-hill-far:#c6d5b9;--ts-hill:#adc39d;--ts-win:var(--bs-glass);--radius:12px;--radius-sm:8px;--font-sans:var(--font-inter),"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--font-serif:var(--font-sans);--font-mono:var(--font-sans);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:72px;--content:1180px;--ease:cubic-bezier(0.2,0.8,0.2,1);color-scheme:light}html.dark{--bg:#12140f;--bg-sunken:#0d0f0b;--surface:#1a1d16;--surface-raised:#20241b;--ink:#efeadc;--ink-soft:#dcd6c6;--muted:#a7a391;--line:#2e3227;--line-strong:#414636;--accent:#3e6a45;--accent-hover:#4a7a52;--accent-ink:#cfe3c8;--accent-soft:#1e2c20;--on-accent:#f4f1e6;--link:#a9cc9e;--wheat:#d2ae63;--wheat-soft:#2e2716;--clay:#d98a70;--warn-bg:#2f2814;--warn-ink:#ecd396;--danger-bg:#331b15;--danger-ink:#f3b9a6;--danger-line:#5d3126;--ok-bg:#1e2c20;--ok-ink:#bcdcb2;--info-bg:#1f231b;--info-ink:#d4d9c8;--sidebar:#0e120d;--sidebar-ink:#efe9db;--sidebar-muted:#9ea590;--sidebar-line:rgba(239,233,219,0.09);--sidebar-active:rgba(210,174,99,0.14);--topo:#c9d3b4;--topo-opacity:0.06;--crop-wheat:#5a4f31;--crop-sage:#3f4a35;--crop-loam:#4d4232;--crop-green:#34452f;--crop-lawn:#46523a;--furrow:rgba(0,0,0,0.35);--hedge:#1d2617;--road:#6b6450;--plat-ground:#2a2c22;--shadow:0 1px 2px rgba(0,0,0,0.2),0 12px 40px -8px rgba(0,0,0,0.35);--shadow-lg:0 2px 4px rgba(0,0,0,0.25),0 24px 64px -12px rgba(0,0,0,0.45);--btn-top:#4b7c53;--btn-bottom:#3e6a45;--btn-top-hover:#568a5e;--btn-bottom-hover:#46754d;--btn-border:#2f5235;--btn-glow:0 1px 2px rgba(0,0,0,0.3),0 6px 18px -4px rgba(91,150,100,0.35);--btn-glow-hover:0 1px 2px rgba(0,0,0,0.3),0 10px 24px -6px rgba(91,150,100,0.45);--bs-sky-top:#10160f;--bs-sky-bottom:#1b2119;--bs-grid:rgba(201,211,180,0.05);--bs-sun:#3a3420;--bs-cloud:rgba(239,233,219,0.07);--bs-outline:rgba(0,0,0,0.5);--bs-wood:#a7894f;--bs-wood-dark:#7d6232;--bs-concrete:#55554c;--bs-siding:#cfc9b6;--bs-siding-sage:#7f8f6d;--bs-barn:#8a3a27;--bs-barn-dark:#5e271a;--bs-lap:rgba(0,0,0,0.18);--bs-roof:#1f2620;--bs-trim:#e6e0cf;--bs-glass:#34454b;--bs-glow:#f2c66b;--bs-water:#3f7470;--bs-leaf:#4d633b;--bs-leaf-dark:#3b4f2d;--bs-trunk:#4a3b27;--bs-crane:#b48a2c;--bs-crane-dark:#12140f;--auth-sky-mid:#131a13;--auth-sky-low:#1a251b;--ts-hill-far:#222c1d;--ts-hill:#1c2619;--ts-win:var(--bs-glow);color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);background:var(--bg);color:var(--ink);line-height:1.55;font-size:16px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--link);text-decoration-thickness:1px;text-underline-offset:3px}h1,h2,h3,h4{line-height:1.15;color:var(--ink);font-weight:600;letter-spacing:-.02em}h1,h2{font-family:var(--font-serif)}h1{font-size:clamp(2.2rem,4.4vw,3.9rem);margin:0 0 14px;letter-spacing:-.035em}h1,h2{font-weight:600}h2{font-size:clamp(1.45rem,2.3vw,2rem);margin:0 0 10px;letter-spacing:-.03em}h3{font-size:1.05rem;margin:0 0 8px;letter-spacing:-.005em}p{margin:8px 0}.muted,small{color:var(--muted)}.mono,code{font-family:var(--font-mono);font-size:.92em}::selection{background:var(--wheat-soft);color:var(--ink)}:focus-visible{outline:2px solid var(--wheat);outline-offset:2px}.skip{position:absolute;left:12px;top:-80px;background:var(--accent);color:var(--on-accent);padding:8px 12px;border-radius:8px;z-index:50}.skip:focus{top:12px}.mark{flex:none;display:block}.mark-ground{fill:var(--accent)}.mark-furrows path{stroke:color-mix(in srgb,var(--on-accent) 55%,transparent);stroke-width:1.4}.mark-plot{fill:none;stroke:var(--on-accent);stroke-width:1.6}.mark-seed{fill:var(--wheat-soft);stroke:var(--wheat);stroke-width:1.2}html.dark .mark-seed{fill:var(--wheat);stroke:none}.wordmark{display:inline-flex;align-items:center;gap:15px}.wordmark b{display:block;font-family:var(--font-serif);font-weight:700;font-size:1.25rem;letter-spacing:-.02em;line-height:1}.wordmark small{display:block;font-weight:600;letter-spacing:.16em;text-transform:uppercase;font-size:9.5px;color:var(--muted);margin-top:3px}.brand{color:var(--ink);text-decoration:none}.topo{position:absolute;inset:0;pointer-events:none;background:var(--topo);opacity:var(--topo-opacity);-webkit-mask:url(/brand/contours.svg) center/cover no-repeat;mask:url(/brand/contours.svg) center/cover no-repeat}.market-header-wrap{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:saturate(1.2) blur(14px);backdrop-filter:saturate(1.2) blur(14px);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.market-header{max-width:var(--content);margin:0 auto;padding:14px 28px;gap:27px}.market-header,.market-nav{display:flex;align-items:center}.market-nav{gap:39px;margin-left:auto}.market-nav a:not(.btn){color:var(--ink-soft);text-decoration:none;font-weight:600;font-size:15px}.market-nav a:not(.btn):hover{color:var(--ink)}.market-nav .btn{min-height:38px;padding:8px 16px}.market-main{max-width:var(--content);margin:0 auto;padding:0 28px 72px}.market-footer-wrap{position:relative;overflow:hidden;background:var(--sidebar);color:var(--sidebar-muted)}.market-footer-wrap .topo{--topo:#d9c690;--topo-opacity:0.08}.market-footer{position:relative;max-width:var(--content);margin:0 auto;padding:56px 28px 40px;display:grid;grid-template-columns:1.1fr 2fr;grid-gap:72px;gap:72px;font-size:14px}.market-footer .wordmark b{color:var(--sidebar-ink)}.market-footer .wordmark small{color:var(--sidebar-muted)}.market-footer a{color:var(--sidebar-ink)}.market-footer p{margin:0 0 12px;line-height:1.6}.footer-tag{margin-top:14px!important;color:var(--sidebar-ink);font-family:var(--font-serif);font-size:1.15rem;font-weight:380}.footer-links{display:flex;flex-wrap:wrap;gap:12px 33px;margin:0 0 18px;padding:0;list-style:none}.footer-links a{text-decoration:none;font-weight:600}.hero{display:grid;grid-template-columns:1.02fr .98fr;grid-gap:84px;gap:84px;align-items:center;padding:64px 0 88px}.hero,.hero-copy{position:relative}.hero-copy{z-index:1}.hero h1{max-width:13ch}.hero h1 em{font-style:normal;font-weight:600;color:var(--accent)}html.dark .hero h1 em{color:var(--link)}.eyebrow{display:inline-flex;align-items:center;gap:15px;letter-spacing:.16em;text-transform:uppercase;font-size:11.5px;font-weight:700;color:var(--wheat);margin:0 0 14px}.eyebrow:before{content:"";width:22px;height:1px;background:currentColor}.lede{font-size:1.16rem;line-height:1.6;color:var(--ink-soft);max-width:36rem}.hero-actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:28px}.hero-actions .btn{min-height:48px;padding:12px 22px;font-size:16px}.hero-note{margin-top:18px;font-size:14px;color:var(--muted)}.hero-art{position:relative}.plat{display:block;width:100%;height:auto;border-radius:18px}.answer-float,.plat{box-shadow:var(--shadow-lg);border:1px solid var(--line)}.answer-float{position:absolute;left:-56px;bottom:-72px;width:min(340px,78%);background:var(--surface-raised);border-radius:14px;padding:16px 18px}.answer-float .eyebrow{margin-bottom:8px;font-size:10.5px;font-family:var(--font-sans);color:var(--wheat)}.answer-float p{margin:0;font-family:var(--font-serif);font-size:1.12rem;line-height:1.35;font-weight:420;color:var(--ink)}.answer-float footer{display:flex;gap:12px;align-items:center;margin-top:12px;color:var(--muted);font-size:13px}.chip{display:inline-flex;align-items:center;padding:3px 8px;border-radius:6px;font-family:var(--font-mono);font-size:12px;font-weight:500;background:var(--accent-soft);color:var(--accent-ink);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);white-space:nowrap}.chip.wheat{background:var(--wheat-soft);color:var(--warn-ink);border-color:color-mix(in srgb,var(--wheat) 35%,transparent)}.build-scene{display:block;width:100%;height:auto;border-radius:18px;box-shadow:var(--shadow-lg);border:1px solid var(--line)}.bs-sky-top{stop-color:var(--bs-sky-top)}.bs-sky-bottom{stop-color:var(--bs-sky-bottom)}.bs-grid-line{fill:none;stroke:var(--bs-grid)}.bs-sun{fill:var(--bs-sun)}.bs-cloud{fill:var(--bs-cloud)}.bs-hill-far{fill:var(--crop-sage);opacity:.7}.bs-hill{fill:var(--crop-green);opacity:.85}.bs-wall{fill:none;stroke:var(--hedge);stroke-width:2;stroke-dasharray:2 3;opacity:.5}.bs-ground{fill:var(--crop-lawn)}.bs-ground-line{stroke:var(--hedge);stroke-width:1.5;opacity:.45}.bs-crane-lattice{fill:none;stroke:var(--bs-crane);stroke-width:2.2;stroke-linejoin:round}.bs-crane-solid{fill:var(--bs-crane)}.bs-cable,.bs-crane-tie,.bs-vane{fill:none;stroke:var(--bs-crane-dark);stroke-width:1.3}.bs-crane-weight{fill:var(--bs-crane-dark)}.bs-crane-glass{fill:var(--bs-glass)}.bs-hook-iron{fill:none;stroke:var(--bs-crane-dark);stroke-width:2.2;stroke-linecap:round}.bs-stake{stroke:var(--bs-wood-dark);stroke-width:3;stroke-linecap:round}.bs-flag{fill:var(--clay)}.bs-property{fill:none;stroke:var(--clay);stroke-width:1.4;stroke-dasharray:6 5;opacity:.7}.bs-dim{fill:none;stroke:var(--clay);stroke-width:1.4}.bs-dim-arrow{fill:none;stroke:var(--clay);stroke-width:1.6}.bs-dim-text{font:700 12px var(--font-sans);letter-spacing:.12em;fill:var(--clay)}.bs-concrete{fill:var(--bs-concrete);stroke:var(--bs-outline);stroke-width:.8}.bs-wood{fill:var(--bs-wood);stroke:var(--bs-wood-dark);stroke-width:.8}.bs-wood-strong{fill:var(--bs-wood-dark)}.bs-dig,.bs-fence,.bs-truss{fill:none;stroke:var(--bs-wood-dark);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.bs-dig{stroke-width:1.6}.bs-fence{stroke-width:2.4}.bs-siding{fill:var(--bs-siding)}.bs-siding,.bs-siding-sage{stroke:var(--bs-outline);stroke-width:1}.bs-siding-sage{fill:var(--bs-siding-sage)}.bs-barn{fill:var(--bs-barn);stroke:var(--bs-outline);stroke-width:1}.bs-barn-door{fill:var(--bs-barn-dark)}.bs-lap{fill:none;stroke:var(--bs-lap);stroke-width:1}.bs-batten{fill:none;stroke:rgba(0,0,0,.16);stroke-width:2}.bs-fascia,.bs-trim{fill:var(--bs-trim)}.bs-muntin,.bs-trim-line,.bs-trim-line-thick,.bs-trim-stroke{fill:none;stroke:var(--bs-trim);stroke-width:2.5}.bs-trim-line-thick,.bs-trim-stroke{stroke-width:3.5}.bs-muntin{stroke-width:1.6}.bs-roof{fill:var(--bs-roof)}.bs-course{fill:none;stroke:rgba(255,255,255,.12);stroke-width:1}.bs-brick{fill:var(--clay)}.bs-glass{fill:var(--bs-glass)}.bs-glass-glow{fill:var(--bs-glow);opacity:0}.bs-door{fill:var(--accent)}.bs-knob{fill:var(--wheat)}.bs-trunk{fill:var(--bs-trunk)}.bs-leaf{fill:var(--bs-leaf)}.bs-leaf-dark{fill:var(--bs-leaf-dark)}.bs-water{fill:var(--bs-water)}.bs-ripple{fill:none;stroke:rgba(255,255,255,.7);stroke-width:1.2}.bs-coping{stroke:var(--bs-concrete);stroke-width:4}.bs-ladder{fill:none;stroke:#9aa3a6;stroke-width:1.5}.af-stack{display:grid}.af-stack>*{grid-area:1/1}.af-working{opacity:0}.af-q{font-size:.98rem!important;color:var(--ink-soft)!important}.af-working .zoning-dots{margin-top:10px}.plat .plat-ground{fill:var(--plat-ground)}.plat .crop-wheat{fill:var(--crop-wheat)}.plat .crop-sage{fill:var(--crop-sage)}.plat .crop-loam{fill:var(--crop-loam)}.plat .crop-green{fill:var(--crop-green)}.plat .crop-lawn{fill:var(--crop-lawn)}.plat .lawn-dot{fill:var(--furrow)}.plat .furrow-line{stroke:var(--furrow);stroke-width:1.3}.plat .field{stroke:var(--hedge);stroke-width:2.6;stroke-linejoin:round}.plat .road{fill:none;stroke:var(--road);stroke-width:13;stroke-linecap:round}.plat .road-line{fill:none;stroke:var(--line-strong);stroke-width:1;stroke-dasharray:6 7}.plat .lot{stroke:var(--accent);stroke-width:3.2;stroke-linejoin:round}html.dark .plat .lot{stroke:var(--link)}.plat .setback{fill:none;stroke:var(--clay);stroke-width:1.6;stroke-dasharray:5 4}.plat .house{fill:var(--ink);opacity:.86}.plat .shed{fill:var(--clay)}.plat .dim{stroke:var(--clay);stroke-width:1.4}.plat .dim-arrow{fill:none;stroke:var(--clay);stroke-width:1.6}.plat .dim-witness{stroke:var(--clay);stroke-width:.8;stroke-dasharray:2 3;opacity:.7}.plat .trees circle{fill:var(--hedge);opacity:.9}.plat .tag{fill:var(--surface-raised);stroke:var(--clay);stroke-width:1}.plat .tag-zone{stroke:var(--accent)}.plat .tag-text{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.06em;fill:var(--clay)}.plat .tag-zone-text{fill:var(--accent-ink)}html.dark .plat .tag-zone-text{fill:var(--link)}.plat .north{font-family:var(--font-mono);font-size:12px;fill:var(--ink-soft);opacity:.7}.ledger{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:72px 0 0;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line)}.ledger div{padding:22px 22px 22px 0}.ledger div+div{padding-left:22px;border-left:1px solid var(--line)}.ledger strong{display:block;font-family:var(--font-serif);font-weight:600;font-size:clamp(2rem,3.4vw,2.8rem);line-height:1;letter-spacing:-.02em}.ledger span{display:block;margin-top:8px;color:var(--muted);font-size:14px}.section{margin:96px 0}.section-head{display:grid;grid-template-columns:1fr 1fr;grid-gap:72px;gap:72px;align-items:end;margin-bottom:32px}.section-head h2{margin:0;max-width:18ch;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:600;letter-spacing:-.025em}.section-head p{margin:0;color:var(--ink-soft);font-size:1.05rem}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));grid-gap:24px}.grid,.grid-2{display:grid;gap:24px}.grid-2{grid-template-columns:1.2fr .8fr;grid-gap:24px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;margin-bottom:16px;box-shadow:var(--shadow)}.card.flat{box-shadow:none}.card h2,.card h3{margin-top:0}.card h2{font-size:1.45rem}.plain-list,.role ul{padding-left:18px;margin:8px 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:0;gap:0;border-top:1px solid var(--line-strong)}.step{position:relative;padding:28px 28px 8px 0}.step+.step{padding-left:28px;border-left:1px solid var(--line)}.step span{display:block;font-family:var(--font-serif);font-weight:600;font-size:3rem;line-height:1;color:var(--wheat);margin-bottom:18px}.step b{display:block;font-size:1.1rem;margin-bottom:6px}.step p{color:var(--ink-soft)}.proof-panel{position:relative;overflow:hidden;display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:72px;gap:72px;align-items:center;padding:48px;border-radius:20px;background:var(--sidebar);color:var(--sidebar-ink)}.proof-panel .topo{--topo:#d9c690;--topo-opacity:0.1}.proof-panel>:not(.topo){position:relative}.proof-panel h2{color:var(--sidebar-ink);font-size:clamp(1.8rem,3vw,2.5rem);font-weight:600;letter-spacing:-.025em}.proof-copy>p{color:var(--sidebar-muted)}.proof-panel .eyebrow{color:#d9bd80}.proof-list{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-gap:18px;gap:18px}.proof-list li{display:grid;grid-template-columns:22px 1fr;grid-gap:15px;gap:15px;color:var(--sidebar-ink)}.proof-list li:before{content:"";width:14px;height:14px;margin-top:4px;border-radius:4px;border:1.5px solid #d9bd80;background:linear-gradient(135deg,transparent 45%,#d9bd80 0,#d9bd80 55%,transparent 0)}.sample{background:var(--surface-raised);color:var(--ink);border-radius:14px;padding:22px 24px;box-shadow:var(--shadow-lg)}.sample p{color:var(--ink-soft)}.sample-q{color:var(--ink)!important;font-family:var(--font-serif);font-size:1.2rem;font-weight:400;margin:0 0 14px}.sample .zoning-bottom-line{margin:0 0 12px}.sample ul{margin:0;padding-left:18px;color:var(--ink-soft)}.sample li{margin:4px 0}.sample li .chip{margin-left:6px}.registry{border-top:1px solid var(--line-strong)}.registry details{border-bottom:1px solid var(--line)}.registry summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px;align-items:baseline;padding:16px 2px;font-weight:650}.registry summary::-webkit-details-marker{display:none}.registry summary:after{content:"+";font-family:var(--font-mono);color:var(--muted);margin-left:12px}.registry details[open] summary:after{content:"−"}.registry summary small{margin-left:auto;font-weight:500}.registry ul{columns:220px 3;column-gap:48px;list-style:none;padding:0 0 18px;margin:0}.registry li{page-break-inside:avoid;break-inside:avoid;padding:5px 0;display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:15px}.registry li a{font-size:13px}.audience{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:24px;gap:24px}.audience .card{display:flex;flex-direction:column;margin:0}.audience .card p:last-child{margin-top:auto;padding-top:12px}.audience h3{font-family:var(--font-serif);font-size:1.35rem;font-weight:600;letter-spacing:-.025em}.cta-band{position:relative;overflow:hidden;text-align:center;padding:72px 24px;border-radius:20px;border:1px solid var(--line);background:var(--surface)}.cta-band h2{max-width:20ch;margin:0 auto 12px;font-size:clamp(1.9rem,3.4vw,2.8rem);font-weight:600;letter-spacing:-.025em}.cta-band p{max-width:38rem;margin:0 auto;color:var(--ink-soft)}.cta-band .hero-actions{justify-content:center}.cta-band>:not(.topo){position:relative}.town-grid .card{padding:16px 18px}.town-grid .card h3{font-family:var(--font-serif);font-weight:600;font-size:1.15rem;letter-spacing:-.025em}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar,.tabbar a{text-decoration:none}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;gap:3px;background:var(--sidebar);color:var(--sidebar-ink);padding:20px 14px 16px}.sidebar:after{content:"";position:absolute;inset:auto 0 0 0;height:55%;pointer-events:none;background:#d9c690;opacity:.07;-webkit-mask:url(/brand/contours-tall.svg) bottom/cover no-repeat;mask:url(/brand/contours-tall.svg) bottom/cover no-repeat}.sidebar>*{position:relative;z-index:1}.sidebar .brand{color:var(--sidebar-ink);padding:4px 10px 22px}.sidebar .wordmark small{color:var(--sidebar-muted)}.sidebar .mark-ground{fill:#2f5235}.nav-label{padding:8px 12px 6px;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--sidebar-muted);opacity:.8}.nav-link{position:relative;display:flex;align-items:center;gap:16.5px;color:color-mix(in srgb,var(--sidebar-ink) 82%,transparent);text-decoration:none;padding:9px 12px;border-radius:8px;font-weight:600;font-size:15px;min-height:42px}.nav-link svg{flex:none;opacity:.85}.nav-link[aria-current=page]{background:var(--sidebar-active);color:var(--sidebar-ink)}.nav-link[aria-current=page]:before{content:"";position:absolute;left:-14px;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0;background:#d9bd80}.nav-link[aria-current=page] svg{color:#d9bd80;opacity:1}.tabbar a[aria-current=page]{color:var(--accent)}.sidebar .nav-link:hover{background:rgba(239,233,219,.06);color:var(--sidebar-ink)}.sidebar .spacer{flex:1 1}.who{padding:14px 10px 4px;border-top:1px solid var(--sidebar-line);margin-top:8px}.who-row{display:flex;align-items:center;gap:15px;margin-bottom:10px}.avatar{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;background:#d9bd80;color:#1c2a1f;font-weight:700;font-size:13px;letter-spacing:.02em}.who strong{display:block;font-size:14px;line-height:1.25}.who span{color:var(--sidebar-muted);font-size:12.5px}.who-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:9px;gap:9px}.who-actions form{margin:0}.sidebar .theme-toggle,.sidebar button.quiet{width:100%;margin:0;min-height:34px;padding:4px 8px;font-size:13px;font-weight:600;background:transparent;color:var(--sidebar-ink);border:1px solid var(--sidebar-line);border-radius:7px}.sidebar .theme-toggle:hover,.sidebar button.quiet:hover{background:rgba(239,233,219,.06)}.shell-main{min-width:0;display:flex;flex-direction:column}.topbar{display:none;align-items:center;gap:18px;padding:12px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.topbar .grow{margin-left:auto;display:flex;gap:12px;align-items:center}.content{padding:32px 40px 56px;max-width:1120px;width:100%}.content-zoning{max-width:none;padding:0;flex:1 1;display:flex;min-height:0}.tabbar{display:none}.crumbs{display:flex;flex-wrap:wrap;gap:9px;align-items:center;font-size:14px;margin:0}.crumbs,.crumbs a{color:var(--muted)}.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--ink)}.page-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--line)}.page-head h1{font-size:clamp(1.9rem,3vw,2.6rem);margin:0}.page-head .eyebrow{margin-bottom:8px}.actions{display:flex;flex-wrap:wrap;gap:15px;align-items:center;margin-top:12px}.btn,button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(180deg,var(--btn-top) 0,var(--btn-bottom) 100%);color:var(--on-accent);border:1px solid var(--btn-border);border-radius:var(--radius-sm);padding:8px 16px;min-height:40px;font:inherit;font-size:15px;font-weight:600;letter-spacing:-.005em;cursor:pointer;text-decoration:none;line-height:1.2;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),var(--btn-glow);transition:box-shadow .16s var(--ease),background .16s var(--ease),transform 90ms var(--ease)}.btn:hover,button:hover{background:linear-gradient(180deg,var(--btn-top-hover) 0,var(--btn-bottom-hover) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),var(--btn-glow-hover)}button:disabled{opacity:.55;cursor:not-allowed}.btn.secondary,a.secondary,button.secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong);box-shadow:0 1px 0 rgba(40,35,20,.04)}.btn.secondary:hover,a.secondary:hover,button.secondary:hover{background:var(--surface-raised);box-shadow:0 1px 0 rgba(40,35,20,.04);border-color:var(--ink-soft)}a.quiet,button.quiet{background:transparent;color:var(--danger-ink);border:1px solid var(--danger-line);min-height:32px;padding:4px 10px;font-size:13px;box-shadow:none}a.quiet:hover,button.quiet:hover{background:var(--danger-bg)}.theme-toggle{background:transparent;color:var(--ink-soft);border:1px solid var(--line-strong);min-height:36px;box-shadow:none;font-size:14px}.theme-toggle:hover{background:var(--surface);box-shadow:none}label{display:block;margin:16px 0 0;font-size:13.5px;font-weight:650;color:var(--ink-soft)}.hint,label .hint{display:block;font-weight:450;color:var(--muted);margin-top:2px}input,select,textarea{display:block;width:100%;margin:6px 0 0;padding:12px;font:inherit;font-size:16px;font-weight:400;line-height:1.5;border:1px solid #e5e7eb;border-radius:8px;background:#ffffff;color:var(--ink);box-shadow:none;transition:border-color .14s var(--ease),box-shadow .14s var(--ease)}input:-webkit-autofill,input:-webkit-autofill:focus,input:-webkit-autofill:hover,select:-webkit-autofill,textarea:-webkit-autofill{-webkit-text-fill-color:var(--ink);-webkit-box-shadow:inset 0 0 0 1000px #ffffff;-webkit-transition:background-color 9999s ease-out 0s;transition:background-color 9999s ease-out 0s}html.dark input,html.dark select,html.dark textarea{background:var(--surface-raised);border-color:var(--line)}html.dark input:-webkit-autofill,html.dark input:-webkit-autofill:focus,html.dark input:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px var(--surface-raised) inset}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--muted) 75%,transparent)}textarea{min-height:88px}select{height:calc(1.5em + 26px)}label.choice{display:inline-flex;align-items:center;gap:12px;font-weight:600;margin:8px 16px 0 0}label.choice input{width:auto;margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:0 24px;gap:0 24px}.narrow{max-width:440px;margin:28px auto}.auth-shell{--scene-h:clamp(180px,23vw,330px);position:relative;z-index:1;min-height:calc(100vh - 70px - var(--scene-h) * .55);display:grid;align-items:center;padding:24px 0 0}.auth-shell:before{content:"";position:absolute;inset:0 -28px;pointer-events:none;background:var(--topo);opacity:var(--topo-opacity);-webkit-mask:url(/brand/contours.svg) center/cover no-repeat;mask:url(/brand/contours.svg) center/cover no-repeat}.auth-shell>*{position:relative}form.inline{display:inline}form.inline button{width:auto}table{width:100%;border-collapse:collapse}td,th{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700;border-bottom-color:var(--line-strong)}.scroll{overflow-x:auto}.badge,.v{display:inline-flex;align-items:center;gap:9px;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:700;letter-spacing:.04em;background:var(--bg-sunken);color:var(--ink-soft);white-space:nowrap;border:1px solid color-mix(in srgb,currentColor 14%,transparent)}.tone-ok,.v.pass{background:var(--ok-bg);color:var(--ok-ink)}.tone-warn,.v.needs_professional,.v.warn{background:var(--warn-bg);color:var(--warn-ink)}.tone-info{background:var(--info-bg);color:var(--info-ink)}.tone-neutral{background:var(--bg-sunken);color:var(--ink-soft)}.v.fail{background:var(--danger-bg);color:var(--danger-ink)}.badge.now{background:var(--accent-soft);color:var(--accent-ink)}.badge.waiting{background:var(--warn-bg);color:var(--warn-ink)}.badge.done{background:var(--ok-bg);color:var(--ok-ink)}.alert,.toast{background:var(--danger-bg);border:1px solid var(--danger-line);color:var(--danger-ink);border-radius:10px;padding:12px 16px;margin:0 0 16px}.notice{background:var(--ok-bg);border:1px solid color-mix(in srgb,var(--ok-ink) 28%,transparent);color:var(--ok-ink);border-radius:12px;padding:12px 14px;margin:0 0 16px}.mail-text{white-space:pre-wrap;background:var(--bg-sunken);border-radius:12px;padding:12px;overflow-x:auto;font-size:13px;line-height:1.45}.mail-frame{width:100%;min-height:480px;border:1px solid var(--line);border-radius:12px;background:#f3f1ec}.toast-wrap{position:fixed;right:16px;bottom:84px;z-index:40;max-width:min(420px,calc(100% - 32px))}.toast{box-shadow:var(--shadow);display:flex;gap:18px;align-items:flex-start}.toast button{min-height:32px;background:transparent;color:inherit;border:1px solid}.empty{padding:28px 8px;text-align:center}.empty h3{font-family:var(--font-serif);font-size:1.7rem;font-weight:600;letter-spacing:-.025em}.action-list{display:flex;flex-direction:column;gap:15px}.action-item{display:grid;grid-template-columns:auto 1fr auto;grid-gap:18px;gap:18px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:inherit;background:var(--surface)}.action-item:hover{border-color:var(--line-strong)}.action-item p{margin:2px 0 0;color:var(--muted);font-size:14px}.progress{display:flex;gap:12px;margin:8px 0 16px}.progress span{height:4px;flex:1 1;border-radius:99px;background:var(--line)}.progress span.on{background:var(--accent)}.wizard-step[hidden]{display:none}.review-dl{display:grid;grid-template-columns:160px 1fr;grid-gap:9px 18px;gap:9px 18px;margin:0}.review-dl dt{color:var(--muted)}.town-list{max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:8px 12px;margin-top:8px;background:var(--bg)}.town-list fieldset{border:0;margin:0 0 12px;padding:0}.town-list legend{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:700;padding:0}.permit-choice{display:block;border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-top:8px;background:var(--surface)}.permit-choice:has(input:checked),.town-list label.choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.permit-choice input,.town-list label.choice input{width:auto;display:inline-block;margin-right:8px}.town-list label.choice{display:flex;align-items:center;gap:12px;margin:4px 0;padding:6px 4px;border-radius:8px;border:1px solid transparent}.project-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:24px;gap:24px;align-items:start}.subnav{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 16px}.subnav a{text-decoration:none;color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:650}.file-block{border-top:1px solid var(--line);padding:12px 0}tr.conflict{background:color-mix(in srgb,var(--danger-bg) 65%,transparent)}.zoning-desk{display:flex;flex-direction:column;min-height:100vh;background:var(--bg)}.zoning-bar{display:flex;gap:18px;align-items:flex-end;padding:14px 20px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:-webkit-sticky;position:sticky;top:0;z-index:8}.zoning-bar label{margin:0;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.zoning-bar input,.zoning-bar select{margin-top:5px}.zoning-bar button{min-height:42px}.zoning-state{width:160px}.zoning-town{position:relative;flex:1 1;min-width:180px}.zoning-town-list{position:absolute;z-index:12;left:0;right:0;top:calc(100% + 4px);max-height:320px;overflow:auto;margin:0;padding:6px;list-style:none;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;box-shadow:var(--shadow)}.zoning-town-list button{width:100%;background:transparent;color:var(--ink);border:0;display:flex;justify-content:space-between;gap:12px;text-align:left}.zoning-town-list small{display:block;color:var(--muted);font-weight:500}.zoning-body{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:0;flex:1 1}.zoning-body.with-library{grid-template-columns:220px minmax(0,1fr) minmax(280px,380px)}.zoning-threads{border-right:1px solid var(--line);padding:16px 12px;overflow:auto;background:color-mix(in srgb,var(--bg-sunken) 60%,var(--bg))}.zoning-threads ul{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}.zoning-threads button{width:100%;background:transparent;color:var(--ink-soft);border:1px solid transparent;text-align:left;box-shadow:none;font-weight:600;font-size:14px;line-height:1.35;align-items:flex-start;padding:10px 12px}.zoning-threads button:hover{background:var(--surface)}.zoning-sections button.on,.zoning-threads button.on{border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow)}.zoning-threads button small{display:block;margin-top:2px;color:var(--muted);font-size:12px}.zoning-bar .threads-toggle{display:none}.zoning-main{padding:28px 40px;overflow:auto}.zoning-empty,.zoning-log{max-width:920px;margin:0 auto}.zoning-empty{position:relative;padding:56px 0 24px}.zoning-empty h1{font-size:clamp(2.2rem,4vw,3.4rem);max-width:15ch}.zoning-prompts{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.zoning-prompts button{background:var(--surface);color:var(--ink-soft);border:1px solid var(--line-strong);box-shadow:none;font-weight:600;border-radius:999px;padding:8px 16px}.zoning-prompts button:hover{background:var(--surface-raised);color:var(--ink);border-color:var(--accent)}.zoning-user{margin:28px 0 12px;font-family:var(--font-serif);font-size:1.5rem;font-weight:400;letter-spacing:-.015em;line-height:1.3;color:var(--ink)}.zoning-answer{background:var(--surface-raised);border:1px solid var(--line);border-radius:16px;padding:24px 28px;box-shadow:var(--shadow)}.zoning-summary{font-size:1.04rem;line-height:1.65;color:var(--ink-soft)}.zoning-summary li{margin:3px 0}.zoning-summary li::marker{color:var(--wheat)}.zoning-bottom-line{margin:14px 0 18px;padding:16px 20px;border-left:3px solid var(--accent);border-radius:4px 10px 10px 4px;background:var(--accent-soft);color:var(--ink);font-family:var(--font-serif);font-size:1.22rem;font-weight:400;line-height:1.45;letter-spacing:-.005em}.zoning-bottom-line b,.zoning-bottom-line strong{display:block;margin-bottom:4px;font-family:var(--font-sans);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink)}html.dark .zoning-bottom-line b,html.dark .zoning-bottom-line strong{color:var(--link)}.zoning-thinking{display:flex;flex-direction:column;gap:12px;color:var(--muted);font-weight:600}.zoning-thinking-now{display:flex;align-items:center;gap:18px}.zoning-thinking-done{margin:0;padding-left:32px;list-style:none;font-weight:500;font-size:.92rem}.zoning-thinking-done li:before{content:"✓";margin-left:-20px;margin-right:8px;color:var(--accent)}.zoning-thinking-note{margin:2px 0 0;font-weight:400;font-size:.85rem}.zoning-dots{display:inline-flex;gap:7.5px}.zoning-dots i{width:8px;height:8px;border-radius:50%;background:var(--accent);opacity:.35}.zoning-thinking-step{animation:zoning-fade .4s ease}.zoning-summary p{margin:0 0 8px}.zoning-summary ul{margin:0 0 10px;padding-left:20px}.zoning-citations h3{margin-top:18px}.zoning-pills,.zoning-zones{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:10px 0}.zoning-zones label{margin:0 0 0 8px;min-width:140px}.zoning-site-controls{margin:12px 0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg-sunken)}.zoning-site-head{margin:0 0 4px;font-size:.95rem}.zoning-site-controls .zoning-zones{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-gap:12px 18px;gap:12px 18px}.zoning-site-controls .zoning-zones label{margin:0;min-width:0}.zoning-site-note{margin:4px 0 0;font-size:.9rem}.zoning-changed{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin:6px 0 0;padding:8px 10px;border-left:4px solid var(--accent);border-radius:6px;background:var(--accent-soft);font-size:.95rem}.zoning-report,.zoning-report-done{margin:8px 0 0;text-align:right}.zoning-report-done{font-size:.9rem}.zoning-report-form{margin:10px 0 0;padding:10px 12px;border:1px solid var(--line);border-radius:8px}.zoning-report-form h3{margin:0 0 8px;font-size:1rem}.zoning-report-form textarea{min-height:70px}.report-actions{display:flex;flex-wrap:wrap;gap:12px}.answer-reports{max-width:860px;margin:0 auto;padding:16px}.citation,button.citation{background:var(--surface);color:var(--accent-ink);border:1px solid var(--line-strong);border-radius:6px;min-height:30px;padding:3px 9px;font-family:var(--font-mono);font-size:12.5px;font-weight:500;box-shadow:none}button.citation:hover{background:var(--accent-soft);border-color:var(--accent)}html.dark .citation,html.dark button.citation{color:var(--link)}.zoning-citations details{border-top:1px solid var(--line);padding:8px 0}.zoning-citations blockquote{margin:8px 0;padding:12px 16px;background:var(--bg);border-left:2px solid var(--wheat);border-radius:2px 8px 8px 2px;white-space:pre-wrap;font-family:var(--font-serif);font-size:15px;line-height:1.6;color:var(--ink-soft)}.zoning-composer{position:-webkit-sticky;position:sticky;bottom:0;max-width:920px;margin:0 auto;background:linear-gradient(to bottom,transparent,var(--bg) 22%);padding:22px 0 6px}.zoning-composer input,.zoning-composer textarea{box-shadow:var(--shadow)}.zoning-library{border-left:1px solid var(--line);background:var(--surface);padding:18px;overflow:auto;max-height:calc(100vh - 72px)}.zoning-library-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.zoning-sections{list-style:none;margin:8px 0;padding:0;max-height:240px;overflow:auto}.zoning-sections button{width:100%;background:transparent;color:var(--ink);border:1px solid transparent;text-align:left}.zoning-sections small{display:block;color:var(--muted);font-weight:500}.zoning-excerpt{white-space:pre-wrap;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px;max-height:320px;overflow:auto;font-family:var(--font-serif);font-size:14px;line-height:1.6}.zoning-upload{border-top:1px solid var(--line);margin-top:12px;padding-top:8px}@keyframes zoning-fade{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@keyframes zoning-dot{0%,80%,to{opacity:.35;transform:scale(.85)}40%{opacity:1;transform:scale(1.1)}}@media (prefers-reduced-motion:no-preference){.zoning-dots i{animation:zoning-dot 1.2s ease-in-out infinite}.zoning-dots i:nth-child(2){animation-delay:.15s}.zoning-dots i:nth-child(3){animation-delay:.3s}.action-item,.btn,.card,.nav-link,button{transition:transform .16s var(--ease),background .16s var(--ease),border-color .16s var(--ease)}.action-item:hover{transform:translateY(-1px)}}@media (max-width:900px){.form-grid,.grid-2,.hero,.project-grid,.review-dl,.steps{grid-template-columns:1fr}.market-header,.market-main{padding-left:16px;padding-right:16px}.market-nav .nav-quiet{display:none}.market-header{flex-wrap:wrap;gap:15px}.shell{grid-template-columns:1fr}.sidebar{display:none}.topbar{display:flex}.content,.topbar{padding-left:16px;padding-right:16px}.content{padding-top:20px}.zoning-main{padding:18px 16px}.zoning-bar{top:61px}.hero{padding-top:32px;gap:60px}.answer-float{position:relative;left:auto;bottom:auto;width:auto;margin:-28px 12px 0}.ledger{grid-template-columns:1fr 1fr;margin-top:64px}.ledger div:nth-child(3){padding-left:0;border-left:0}.ledger div:nth-child(n+3){border-top:1px solid var(--line)}.section{margin:64px 0}.section-head{grid-template-columns:1fr;gap:18px}.step,.step+.step{padding:22px 0 6px;border-left:0}.step+.step{border-top:1px solid var(--line)}.proof-panel{padding:28px 22px;gap:42px}.audience,.market-footer,.proof-panel{grid-template-columns:1fr}.market-footer{gap:36px;padding:40px 16px 32px}.market-nav{gap:21px}.market-nav .theme-toggle{display:none}.market-header{flex-wrap:nowrap}.market-nav .btn{padding:8px 12px;font-size:14px}.wordmark small{display:none}.cta-band{padding:48px 20px}.shell{padding-bottom:76px}.tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--surface);border-top:1px solid var(--line);padding:6px 8px calc(8px + env(safe-area-inset-bottom));justify-content:space-around}.tabbar a{flex:1 1;text-align:center;color:var(--muted);font-size:11px;font-weight:700;text-decoration:none;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.tabbar a[aria-current=page]{color:var(--link);background:transparent}table.stack thead{display:none}table.stack tr{display:block;padding:10px 0;border-bottom:1px solid var(--line)}table.stack td{display:flex;justify-content:space-between;gap:18px;border:0;padding:4px 0}table.stack td:before{content:attr(data-label);color:var(--muted);font-size:13px;font-weight:650}.page-head{flex-direction:column}.actions .btn.block,form:not(.inline) button[type=submit]{width:100%}.zoning-body{grid-template-columns:1fr}.zoning-threads{display:none}.zoning-bar .threads-toggle{display:inline-flex}.zoning-threads.open{display:block;position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line)}.zoning-library{position:fixed;inset:0 0 76px 0;z-index:35;width:auto}.zoning-bar{flex-wrap:wrap}.zoning-main{padding-bottom:12px}.form-grid,.plan-grid{grid-template-columns:1fr}.auth-card{margin:12px auto}}.auth-card{max-width:920px;margin:28px auto;padding:32px 36px;box-shadow:var(--shadow-lg)}.auth-card h2{font-size:2rem;font-weight:600;letter-spacing:-.025em}.narrow.card{padding:32px 34px;box-shadow:var(--shadow-lg)}.auth-tabs{display:inline-flex;flex-wrap:wrap;gap:6px;padding:4px;margin:4px 0 20px;background:var(--bg-sunken);border-radius:10px}.auth-tabs button{background:transparent;color:var(--ink-soft);border:0;box-shadow:none;min-height:36px;border-radius:7px}.auth-tabs button:hover{background:color-mix(in srgb,var(--surface) 60%,transparent)}.auth-tabs button[aria-selected=true]{background:var(--surface-raised);color:var(--ink);box-shadow:0 1px 3px rgba(40,35,20,.14)}.role-picks{border:0;margin:12px 0 0;padding:0}.role-picks legend{font-size:14px;font-weight:700}.bill-toggle{display:inline-flex;gap:6px;padding:4px;border:1px solid var(--line-strong);border-radius:999px;margin-bottom:14px}.bill-toggle button{background:transparent;color:var(--ink-soft);border:0;border-radius:999px;min-height:36px;box-shadow:none}.bill-toggle button.on{background:var(--accent);color:var(--on-accent)}.bill-toggle button span{font-weight:600;opacity:.85;margin-left:6px}.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.plan-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;width:100%;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:18px;min-height:0;box-shadow:none}.plan-card:hover{background:var(--surface-raised);border-color:var(--line-strong)}.plan-card.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.plan-kicker{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--wheat);font-weight:700}.plan-blurb{color:var(--ink-soft);font-size:14px;font-weight:500}.price-lg{font-family:var(--font-serif);font-size:2rem;font-weight:600;line-height:1.1;letter-spacing:-.02em}.price-lg span,.save-pill{font-family:var(--font-sans,inherit);font-size:12px;font-weight:700}.save-pill{display:inline-flex;background:var(--ok-bg);color:var(--ok-ink);border-radius:999px;padding:3px 8px;margin-top:6px}.promo-row{display:flex;gap:12px;align-items:flex-end}.promo-row label{flex:1 1}.promo-row button{width:auto;margin-bottom:2px}.quote-box{background:var(--bg-sunken);border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:12px 0}.quote-box p{margin:4px 0}.quote-hint{margin:8px 0 12px}.note{background:var(--wheat-soft);color:var(--warn-ink);border:1px solid color-mix(in srgb,var(--wheat) 30%,transparent);border-radius:10px;padding:12px 16px;margin:0 0 16px}.sync-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:15px;gap:15px;margin:8px 0 12px}.sync-stats div{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px}.sync-stats strong{display:block;font-family:var(--font-serif);font-size:1.9rem;font-weight:600;letter-spacing:-.02em}.sync-stats span{color:var(--muted);font-size:13px}.sync-run{flex-direction:column;align-items:flex-end}.sync-run,.sync-tabs{display:flex;gap:12px}.sync-tabs{flex-wrap:wrap;margin:0 0 16px}.sync-tabs button{background:var(--surface);color:var(--ink-soft);border:1px solid var(--line-strong);box-shadow:none}.sync-tabs button[aria-selected=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}@media (max-width:800px){.sync-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sync-run{align-items:stretch}}.company-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.company-head h2{margin:0}.company-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:15px 24px;gap:15px 24px;align-items:end}.company-form button{justify-self:start}.company-banner{margin:0 0 16px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;display:flex;flex-wrap:wrap;align-items:center;gap:15px;justify-content:space-between}.company-banner form{margin:0}.terms{max-width:820px;margin:0 auto;line-height:1.6}.terms h2{margin-top:28px;font-size:1.15rem}.terms-caps{text-transform:uppercase;font-size:.9rem;letter-spacing:.01em}.terms-accept{max-width:820px;margin:0 auto 16px}label.choice.terms-agree{display:flex;align-items:flex-start;font-weight:400;margin:12px 0;line-height:1.45}label.choice.terms-agree input{margin-top:4px;flex:none}.zoning-disclaimer{margin:12px 0 0;font-size:.85rem}.zoning-updating{display:flex;align-items:center;gap:12px;margin:8px 0 0;font-weight:600;color:var(--accent)}.zoning-log .zoning-answer{scroll-margin-top:180px}.zoning-checked{padding:7px 20px;font-size:.82rem;color:var(--muted);border-bottom:1px solid var(--line);background:var(--bg)}.zoning-checked b{color:var(--accent)}.zoning-checked.late b{color:var(--ink)}.nav-count{margin-left:auto;min-width:20px;padding:1px 7px;border-radius:999px;background:var(--danger-ink);color:#fff;font-size:12px;font-weight:700;text-align:center}.report-email{font-size:.85rem}.report-email.warn{color:var(--danger-ink)}.two-step ol{padding-left:20px}.two-step ol>li{margin-bottom:12px}.two-step-qr{width:200px;margin:12px 0;padding:10px;background:#fff;border-radius:10px;border:1px solid var(--line)}.two-step-codes code{font-family:var(--font-mono)}.two-step-qr svg{display:block;width:100%;height:auto}.two-step-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px 24px;gap:6px 24px;list-style:none;padding:0;margin:8px 0}.zoning-main>*{max-width:920px;margin-left:auto;margin-right:auto}.zoning-composer{display:grid;grid-template-columns:1fr auto;grid-gap:9px 15px;gap:9px 15px;align-items:end}.zoning-composer label{grid-column:1/-1;margin:0;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.zoning-composer textarea{margin:0;min-height:64px;resize:vertical}.zoning-composer button{min-height:52px;padding:10px 22px;border-radius:12px}@media (max-width:900px){.zoning-composer{grid-template-columns:1fr}}.town-table{border-top:1px solid var(--line-strong)}.town-table details{border-bottom:1px solid var(--line)}.town-table summary{cursor:pointer;list-style:none;display:flex;gap:18px;align-items:baseline;padding:16px 2px;font-weight:650}.town-table summary::-webkit-details-marker{display:none}.town-table summary:after{content:"+";font-family:var(--font-mono);color:var(--muted);margin-left:12px}.town-table details[open] summary:after{content:"−"}.town-table summary small{margin-left:auto;font-weight:500}.town-table table{margin:0 0 16px;font-size:15px}.town-table td{padding:9px 8px}.town-table td:last-child{text-align:right}.zoning-threads li button{display:block}.zoning-threads small{font-weight:500}.zoning-threads button.new-question{display:flex;justify-content:center;background:linear-gradient(180deg,var(--btn-top) 0,var(--btn-bottom) 100%);color:var(--on-accent);border-color:var(--btn-border);border-radius:8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),var(--btn-glow)}.zoning-threads button.new-question:hover{background:linear-gradient(180deg,var(--btn-top-hover) 0,var(--btn-bottom-hover) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),var(--btn-glow-hover)}.who .avatar{color:#1c2a1f}@keyframes bs-rise{0%{transform:scaleY(0)}to{transform:none}}@keyframes bs-grow{0%{transform:scaleX(0)}to{transform:none}}@keyframes bs-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes bs-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}@keyframes bs-fade{0%{opacity:0}}@keyframes bs-glow{0%,to{opacity:0}50%{opacity:.55}}@keyframes bs-trolley{0%{transform:translateX(var(--from))}to{transform:none}}@keyframes bs-load{0%{transform:translateY(var(--lift))}50%,to{transform:none}}@keyframes bs-hook{0%{transform:translateY(var(--lift))}50%,62%{transform:none}to{transform:translateY(var(--lift))}}@keyframes bs-exit{0%{opacity:1}to{opacity:0}}@keyframes bs-drift{0%{transform:translateX(-36px)}to{transform:translateX(36px)}}@keyframes bs-ripple{0%{transform:translateX(-8px)}to{transform:none}}@keyframes af-out{0%{opacity:1}to{opacity:0;transform:translateY(-6px)}}@keyframes af-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes flow-pulse{0%{left:0;opacity:0}15%,85%{opacity:1}to{left:calc(100% - 32px);opacity:0}}@keyframes flow-pulse-v{0%{top:0;opacity:0}15%,85%{opacity:1}to{top:calc(100% - 22px);opacity:0}}@keyframes flow-spin{to{transform:translate(-50%) rotate(1turn)}}@keyframes flow-status{0%{opacity:0;transform:translateY(8px)}18%,3%{opacity:1;transform:none}21%,to{opacity:0;transform:translateY(-8px)}}@keyframes flow-blink{50%{opacity:.25}}@keyframes reveal-in{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes topo-drift{0%{transform:scale(1.08) translate(-1.5%,-1%)}to{transform:scale(1.08) translate(1.5%,1%)}}.flow{position:relative;overflow:hidden;display:grid;grid-template-columns:auto minmax(40px,1fr) auto minmax(40px,1fr) auto;align-items:start;padding:56px 48px 36px;margin-bottom:48px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.flow-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:28px 28px;opacity:.5;-webkit-mask-image:radial-gradient(ellipse at center,#000 20%,transparent 72%);mask-image:radial-gradient(ellipse at center,#000 20%,transparent 72%)}.flow>:not(.flow-grid){position:relative}.flow-node{display:flex;flex-direction:column;align-items:center;gap:15px;margin-top:24px;min-width:132px}.flow-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:18px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--accent)}html.dark .flow-icon{color:var(--link)}.flow-node small{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:4px 10px;background:var(--surface)}.flow-link{position:relative;height:2px;margin-top:59px;background:repeating-linear-gradient(90deg,var(--line-strong) 0 6px,transparent 6px 11px)}.flow-link i{position:absolute;top:-4px;left:0;width:32px;height:10px;border-radius:10px;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 80%,transparent),transparent);opacity:0}html.dark .flow-link i{background:radial-gradient(closest-side,var(--link),transparent)}.flow-core{display:flex;flex-direction:column;align-items:center;gap:30px;padding:0 12px}.flow-mark{position:relative;z-index:1;display:grid;place-items:center;width:120px;height:120px;border-radius:30px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg),0 0 0 8px color-mix(in srgb,var(--accent) 6%,transparent)}.flow-ring{position:absolute;top:-18px;left:50%;width:156px;height:156px;transform:translate(-50%);border-radius:50%;border:1px dashed var(--line-strong)}.flow-ring-2{top:-40px;width:200px;height:200px;border:1px dotted color-mix(in srgb,var(--accent) 35%,transparent)}.flow-status{position:relative;width:230px;height:34px}.flow-status span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:13px;font-weight:600;color:var(--ink-soft);opacity:0;box-shadow:var(--shadow)}.flow-status span:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--wheat)}.flow-status span:last-child{opacity:1;color:var(--ok-ink)}.flow-status span:last-child:before{background:var(--accent)}.flow-caption{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;margin:34px 0 0;color:var(--muted);font-size:14px}.kinds{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:18px;gap:18px}.kind{display:flex;flex-direction:column;gap:6px;padding:20px 18px 22px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);color:var(--ink);text-decoration:none}.kind:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.kind svg{display:block;width:100%;height:auto;margin-bottom:12px}.kind path{fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}html.dark .kind path{stroke:var(--link)}.kind path:first-child{stroke:var(--line-strong)}.kind b{font-size:15px}.kind span{font-size:13.5px;line-height:1.45;color:var(--muted)}.registry-wrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);grid-gap:54px;gap:54px;align-items:start}.registry-art{position:-webkit-sticky;position:sticky;top:96px}@media (prefers-reduced-motion:no-preference){.bs-cloud{animation:bs-drift 26s ease-in-out infinite alternate}.bs-cloud-slow{animation-duration:38s;animation-direction:alternate-reverse}.bs-build{animation:bs-exit .6s ease 12.4s both}.bs-build .bs-rise,.bs-build .bs-wipe{transform-box:fill-box;transform-origin:50% 100%;animation:bs-rise var(--dur,.5s) var(--ease) var(--d,0s) both}.bs-build .bs-wipe{animation-duration:var(--dur,.9s);animation-timing-function:cubic-bezier(.4,0,.2,1)}.bs-build .bs-grow{transform-box:fill-box;transform-origin:0 50%;animation:bs-grow var(--dur,.5s) var(--ease) var(--d,0s) both}.bs-build .bs-draw{stroke-dasharray:1;animation:bs-draw var(--dur,.9s) ease-in-out var(--d,0s) both}.bs-build .bs-pop{transform-box:fill-box;transform-origin:center;animation:bs-pop .45s cubic-bezier(.34,1.56,.64,1) var(--d,0s) both}.bs-build .bs-fade{animation:bs-fade .5s ease var(--d,0s) both}.bs-build .bs-ripple{animation:bs-fade .5s ease var(--d,0s) both,bs-ripple 2.4s ease-in-out calc(var(--d, 0s) + .5s) infinite alternate}.bs-build .bs-glass-glow{animation:bs-glow 3.4s ease-in-out var(--d,0s) infinite}.bs-trolley{animation:bs-trolley 1s cubic-bezier(.45,0,.2,1) var(--d,0s) both}.bs-load{animation:bs-load 2.4s cubic-bezier(.45,0,.3,1) var(--d,0s) both}.bs-hook{animation:bs-hook 2.4s cubic-bezier(.45,0,.3,1) var(--d,0s) both}.af-stack{animation:bs-exit .6s ease 12.4s both}.af-working{animation:af-out .35s ease 6.3s both}.af-done{animation:af-in .5s var(--ease) 6.6s both}.flow-link i{animation:flow-pulse 2.6s ease-in-out infinite}.flow-link i+i{animation-delay:1.3s}.flow-link-back i{animation-direction:reverse}.flow-ring{animation:flow-spin 22s linear infinite}.flow-ring-2{animation-duration:34s;animation-direction:reverse}.flow-status span{animation:flow-status 10s ease infinite}.flow-status span:first-child{animation-delay:-10s}.flow-status span:nth-child(2){animation-delay:-8s}.flow-status span:nth-child(3){animation-delay:-6s}.flow-status span:nth-child(4){animation-delay:-4s}.flow-status span:nth-child(5){animation-delay:-2s}.flow-status span:not(:last-child):before{animation:flow-blink .9s ease-in-out infinite}.kinds.wait .kind path{stroke-dasharray:1;stroke-dashoffset:1}.kinds.in .kind path{stroke-dasharray:1;animation:bs-draw 1s ease-in-out var(--d,0s) both}.kind{transition:transform .2s var(--ease),border-color .2s var(--ease),box-shadow .2s var(--ease)}.kind:hover{transform:translateY(-4px)}.kinds .kind:hover path{stroke-dasharray:1;animation:bs-draw .9s ease-in-out both}.reveal.wait{opacity:0;transform:translateY(22px)}.reveal.in{animation:reveal-in .8s var(--ease) both}.audience.reveal.in,.steps.reveal.in{animation:none}.audience.reveal.wait>*,.steps.reveal.wait>*{opacity:0}.audience.reveal.in>*,.steps.reveal.in>*{animation:reveal-in .7s var(--ease) both}.audience.reveal.in>:nth-child(2),.steps.reveal.in>:nth-child(2){animation-delay:.12s}.audience.reveal.in>:nth-child(3),.steps.reveal.in>:nth-child(3){animation-delay:.24s}.audience.reveal.wait,.steps.reveal.wait{opacity:1;transform:none}.topo{animation:topo-drift 36s ease-in-out infinite alternate}}@media (max-width:1100px){.kinds{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.flow{grid-template-columns:1fr;justify-items:center;padding:36px 20px 28px}.flow-node{margin-top:0}.flow-link{width:2px;height:44px;margin:14px 0;background:repeating-linear-gradient(180deg,var(--line-strong) 0 6px,transparent 6px 11px)}.flow-link i{top:0;left:-4px;width:10px;height:22px}.flow-core{padding:40px 0 0}.registry-wrap{grid-template-columns:1fr;gap:36px}.registry-art{position:static}.kinds{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.kind{padding:16px 14px 18px}}@media (max-width:900px) and (prefers-reduced-motion:no-preference){.flow-link i{animation-name:flow-pulse-v}}.auth-scene{display:none}body:has(.auth-shell){background:linear-gradient(180deg,var(--bg) 0,var(--auth-sky-mid) 42%,var(--auth-sky-low) 100%)}body:has(.auth-shell) .market-main{padding-bottom:0}body:has(.auth-shell) .auth-scene{--scene-h:clamp(180px,23vw,330px);display:block;position:relative;height:var(--scene-h);margin-top:calc(var(--scene-h) * -.4);pointer-events:none}.town-scene{display:block;width:100%;height:100%}.ts-star{fill:#f4efdc;opacity:0}html.dark .ts-star{opacity:.7}.ts-sun{fill:var(--bs-sun)}html.dark .ts-sun{fill:#e9e3cf;opacity:.85}.ts-cloud{fill:var(--bs-cloud)}.ts-birds path{fill:none;stroke:var(--ink-soft);stroke-width:1.4;stroke-linecap:round;opacity:.55}.ts-hill-far{fill:var(--ts-hill-far)}.ts-hill{fill:var(--ts-hill)}.ts-wall{fill:none;stroke:var(--hedge);stroke-width:2;stroke-dasharray:2 3;opacity:.45}.ts-leaf-far{fill:var(--bs-leaf-dark);opacity:.55}.ts-leaf{fill:var(--bs-leaf)}.ts-leaf-dark{fill:var(--bs-leaf-dark)}.ts-trunk{fill:var(--bs-trunk)}.ts-wall-white{fill:var(--bs-siding)}.ts-wall-sage{fill:var(--bs-siding-sage)}.ts-column,.ts-edge{stroke:var(--bs-lap);stroke-width:1}.ts-column{fill:var(--bs-trim)}.ts-finial{fill:var(--wheat)}.ts-roof{fill:var(--bs-roof)}.ts-brick{fill:var(--clay)}.ts-door{fill:var(--accent)}.ts-win{fill:var(--ts-win)}.ts-muntin{stroke:var(--bs-trim);stroke-width:1.2}.ts-clock-hand,.ts-vane{fill:none;stroke:var(--bs-roof);stroke-width:2;stroke-linecap:round}.ts-clock{fill:var(--bs-trim);stroke:var(--bs-roof);stroke-width:1.5}.ts-barn,.ts-silo{fill:var(--bs-barn)}.ts-silo{fill:var(--bs-concrete)}.ts-barn-door{fill:var(--bs-barn-dark)}.ts-fence,.ts-trim{fill:none;stroke:var(--bs-trim);stroke-width:2.4}.ts-fence{stroke-width:1.6}.ts-stake,.ts-tripod{fill:none;stroke:var(--bs-wood-dark);stroke-width:2.2;stroke-linecap:round}.ts-instrument{fill:var(--wheat)}.ts-sight{fill:none;stroke:var(--clay);stroke-width:1;stroke-dasharray:3 4;opacity:.8}.ts-flag{fill:var(--clay)}.ts-concrete{fill:var(--bs-concrete)}.ts-stud,.ts-wood{fill:var(--bs-wood)}.ts-truss{fill:none;stroke:var(--bs-wood-dark);stroke-width:2.6;stroke-linejoin:round}.ts-crane{fill:none;stroke:var(--bs-crane);stroke-width:2.2;stroke-linejoin:round}.ts-crane-solid{fill:var(--bs-crane)}.ts-crane-weight{fill:var(--bs-crane-dark)}.ts-cable,.ts-crane-tie,.ts-sling{fill:none;stroke:var(--bs-crane-dark);stroke-width:1.2}.ts-hook-iron{fill:none;stroke:var(--bs-crane-dark);stroke-width:2;stroke-linecap:round}.ts-pole{stroke:var(--bs-trim);stroke-width:2.4}.ts-flag-cloth{fill:var(--clay)}.ts-ground{fill:var(--sidebar)}.ts-lot{stroke:var(--wheat);stroke-width:1.4;stroke-dasharray:7 7;opacity:.5}.auth-card{overflow:hidden}.auth-card.auth-signin{max-width:430px;padding:34px 32px 0}.auth-card.auth-signup{max-width:600px;padding-bottom:0}.auth-card.auth-billing{padding-bottom:0}.auth-head{text-align:center;margin-bottom:22px}.auth-head .mark{display:block;margin:0 auto 16px}.auth-card .auth-head h2{margin:0 0 6px;font-size:1.8rem}.auth-head p{margin:0;color:var(--muted)}.label-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:16px}.label-row label{margin:0}.label-row a{font-size:13px;color:var(--muted)}.label-row a:hover{color:var(--ink)}button.block{width:100%;min-height:46px;margin-top:24px}button.link,button.link:hover{display:inline;min-height:0;padding:0;background:none;border:0;box-shadow:none;color:var(--link);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}button.link:hover{text-decoration-thickness:2px}.auth-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:28px -36px 0;padding:16px 20px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 55%,var(--surface));color:var(--muted);font-size:14px}.auth-signin .auth-foot{margin:28px -32px 0}.trial-pill{display:inline-flex;align-self:flex-start;margin-top:6px;padding:3px 9px;border-radius:999px;background:var(--accent-soft);color:var(--accent-ink);font-size:12px;font-weight:700}.promo-early{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.promo-early summary{cursor:pointer;width:-moz-fit-content;width:fit-content;font-size:14px;font-weight:600;color:var(--link)}.promo-early .alert,.promo-early .note{margin:12px 0 0}.hero-note b{color:var(--ink)}.auth-shell .card.narrow{max-width:430px;padding:34px 32px 30px;box-shadow:var(--shadow-lg)}.auth-shell .card.narrow button:not(.link):not(.secondary):not(.quiet){width:100%;min-height:46px;margin-top:20px}@keyframes ts-fly{0%{transform:translate(-80px,150px)}to{transform:translate(1520px,40px)}}@keyframes ts-trolley{0%{transform:none}to{transform:translateX(84px)}}@keyframes ts-hook{0%{transform:none}to{transform:translateY(52px)}}@keyframes ts-wave{0%{transform:skewY(-5deg) scaleX(.94)}to{transform:skewY(4deg)}}@keyframes ts-twinkle{0%,to{opacity:.75}50%{opacity:.2}}@keyframes ts-lamp{0%,72%{fill:var(--bs-glow)}78%,92%{fill:var(--bs-glass)}to{fill:var(--bs-glow)}}@keyframes ts-march{to{stroke-dashoffset:-28}}@media (prefers-reduced-motion:no-preference){.ts-cloud{animation:bs-drift 30s ease-in-out infinite alternate}.ts-cloud-2{animation-duration:42s;animation-direction:alternate-reverse}.ts-cloud-3{animation-duration:36s}.ts-birds{animation:ts-fly 40s linear infinite}.ts-trolley{animation:ts-trolley 7s ease-in-out infinite alternate}.ts-hook{animation:ts-hook 3.5s ease-in-out infinite alternate}.ts-flag-cloth{transform-box:fill-box;transform-origin:0 50%;animation:ts-wave 2.2s ease-in-out infinite alternate}.ts-lot{animation:ts-march 3s linear infinite}html.dark .ts-star{animation:ts-twinkle 3.6s ease-in-out infinite;animation-delay:calc(var(--i) * -.7s)}html.dark .ts-win{animation:ts-lamp 11s ease-in-out infinite;animation-delay:calc(var(--i) * -1.7s)}}@media (max-width:900px){.auth-card.auth-signin{padding:28px 22px 0}.auth-signin .auth-foot{margin:24px -22px 0}}.section-head.simple{display:block;margin-bottom:24px}.section-head.simple h2{max-width:none}.section-head.simple p{margin-top:8px}.how{display:grid;grid-template-columns:1fr 1fr;grid-gap:56px;gap:56px;align-items:center}.how-steps{list-style:none;margin:0;padding:0;display:grid;grid-gap:28px;gap:28px}.how-steps li{display:grid;grid-template-columns:52px 1fr;grid-gap:18px;gap:18px;align-items:start}.how-steps span{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--font-serif);font-size:1.5rem;font-weight:600}.how-steps b{display:block;font-size:1.25rem;margin:4px 0}.how-steps p{margin:0;color:var(--ink-soft)}.town-check{display:grid;grid-gap:8px;gap:8px;max-width:40rem}.town-check label{font-weight:650}.town-check input{font-size:18px;min-height:54px}.town-check-results{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:10px;gap:10px}.town-check-results li{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.town-check-results li p{margin:4px 0 0;color:var(--muted);font-size:14px}.town-check-results li strong{margin-right:6px}.cta-fine{margin-top:22px!important;font-size:13px;color:var(--muted)!important}@media (max-width:900px){.how{grid-template-columns:1fr;gap:32px}}.btn:active,a.secondary:active,button:active:not(:disabled){transform:translateY(1px) scale(.97);box-shadow:inset 0 2px 4px rgba(0,0,0,.18)}button[data-pending]{position:relative;pointer-events:none;color:transparent!important}button[data-pending]:after{content:"";position:absolute;inset:0;margin:auto;width:16px;height:16px;border-radius:50%;border:2px solid var(--on-accent);border-right:2px solid transparent;animation:press-spin .7s linear infinite}button.citation[data-pending]:after,button.quiet[data-pending]:after,button.secondary[data-pending]:after{border-color:var(--ink);border-right-color:transparent}@keyframes press-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.btn:active,button:active:not(:disabled){transform:none}button[data-pending]:after{animation-duration:2s}}.kind-icon{display:block;width:100%;height:auto}.kind-icon path{fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.kind-icon path:first-child{stroke:var(--line-strong)}.cta-fine.center{text-align:center;max-width:44rem;margin:48px auto 0!important}.va-hero{position:relative;text-align:center;padding:72px 0 0}.va-hero h1{max-width:16ch;margin:0 auto 14px;font-size:clamp(2.4rem,5.4vw,4.2rem)}.va-hero h1 em{font-style:normal;color:var(--accent)}.va-hero .lede{margin:0 auto 34px}.pill-search{z-index:3;display:grid;grid-template-columns:1fr 1fr 1.25fr auto;align-items:center;max-width:960px;margin:0 auto;padding:8px 8px 8px 10px;border:1px solid var(--line);background:var(--surface-raised,var(--surface));box-shadow:var(--shadow-lg);text-align:left}.pill-field,.pill-search{position:relative;border-radius:999px}.pill-field{padding:8px 22px}.pill-field+.pill-field{border-left:1px solid var(--line)}.pill-field:focus-within{background:var(--accent-soft)}.pill-field label{display:block;font-size:12px;font-weight:750;letter-spacing:.02em;margin:0}.pill-field input,.pill-field select{border:0;background:transparent;padding:2px 0;min-height:0;height:auto;font-size:16px;box-shadow:none!important;width:100%}.pill-go{display:inline-flex;align-items:center;gap:8px;min-height:58px;padding:0 26px;border-radius:999px;font-size:17px}.pill-list{position:absolute;left:0;right:0;top:calc(100% + 12px);z-index:4;list-style:none;margin:0;padding:8px;border:1px solid var(--line);border-radius:18px;background:var(--surface-raised,var(--surface));box-shadow:var(--shadow-lg)}.pill-list button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;width:100%;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:10px;color:var(--ink)}.pill-list button:hover{background:var(--accent-soft)}.pill-note{margin:14px auto 0;color:var(--muted)}.cat-row{position:relative;z-index:2;display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:34px auto 0}.cat{all:unset;cursor:pointer;display:grid;justify-items:center;grid-gap:6px;gap:6px;width:92px;padding:10px 6px 8px;border-bottom:2px solid transparent;color:var(--muted);font-size:13px;font-weight:650}.cat .kind-icon{width:64px;opacity:.75}.cat.on,.cat:hover{color:var(--ink);border-bottom-color:var(--ink)}.cat.on .kind-icon,.cat:hover .kind-icon{opacity:1}.cat:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.va-scene{position:relative;z-index:1;margin:-10px -28px 0;height:clamp(150px,20vw,290px);pointer-events:none}.va-scene svg{width:100%;height:100%}.trust-strip{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:12px 40px;margin:0;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink-soft)}.trust-strip b{color:var(--ink)}.example-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px;gap:20px}.example-card{padding:22px 22px 18px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.example-where{margin:0;font-size:12px;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--wheat)}.example-ask{margin:8px 0 14px;font-family:var(--font-serif);font-size:1.15rem;color:var(--ink)}.example-card dl{margin:0;display:grid;grid-gap:0;gap:0}.example-card dl div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.example-card dt{color:var(--muted)}.example-card dd{margin:0;font-weight:650;text-align:right}.example-card .chip{margin-left:6px;font-weight:500}.vb-hero{display:grid;grid-template-columns:1fr .9fr;grid-gap:64px;gap:64px;align-items:center;padding:56px 0 40px}.vb-hero h1{font-size:clamp(2.2rem,4.6vw,3.6rem);max-width:14ch}.vb-hero h1 em{font-style:normal;color:var(--accent)}.try-picker{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-top:26px;max-width:34rem}.try-picker label{font-weight:700;font-size:14px}.try-picker select{margin-top:6px;font-size:17px}.try-picker[aria-busy=true]~.vb-facts,.try-picker[aria-busy=true]~.vb-source{opacity:.5}.vb-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:0;gap:0;margin:24px 0 0;max-width:34rem;border-top:1px solid var(--line-strong)}.vb-facts div{padding:14px 14px 0 0}.vb-facts div+div{padding-left:14px;border-left:1px solid var(--line)}.vb-facts dt{font-size:13px;color:var(--muted)}.vb-facts dd{margin:4px 0 0;font-family:var(--font-serif);font-size:1.8rem;font-weight:600;color:var(--ink)}.vb-source{margin-top:18px;font-size:14px;color:var(--muted)}.vb-art{padding:18px;border-radius:22px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg)}.lot-plan{display:block;width:100%;height:auto}.lp-street{fill:color-mix(in srgb,var(--ink) 12%,transparent)}.lp-street-text{font:700 11px var(--font-mono,monospace);letter-spacing:.3em;fill:var(--muted)}.lp-lot{fill:color-mix(in srgb,var(--accent) 10%,var(--surface));stroke:var(--ink-soft);stroke-width:2}.lp-build{fill:color-mix(in srgb,var(--accent) 16%,transparent);stroke:var(--accent);stroke-width:2;stroke-dasharray:7 5}.lp-house{fill:var(--surface)}.lp-house,.lp-roof{stroke:var(--ink);stroke-width:2}.lp-roof{fill:none;stroke-linejoin:round}.lp-build-text{font-size:12px;font-weight:700;fill:var(--accent)}.lp-dim{stroke:#b4552d;stroke-width:1.6;marker-start:none}.lp-num{font-size:17px;font-weight:800;fill:#b4552d}.lp-cap{font-size:11px;font-weight:600;fill:var(--muted);text-transform:uppercase;letter-spacing:.08em}.vb-next{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px 40px;margin:24px 0 0;padding:30px 34px;border-radius:20px;background:var(--sidebar)}.vb-next,.vb-next h2{color:var(--sidebar-ink)}.vb-next h2{margin:0 0 6px;font-size:1.7rem}.vb-next h2 em{color:#d9bd80}.vb-next p{margin:0;color:var(--sidebar-muted);max-width:36rem}.vb-next .btn{min-height:52px;padding:12px 24px;font-size:16px;background:#d9bd80;color:#1f2a1f;border-color:#d9bd80}.vc-wrap{display:grid;grid-template-columns:.7fr 1.3fr;grid-gap:56px;gap:56px;align-items:start;padding:48px 0 24px}.vc-pitch{font-family:var(--font-serif);font-size:1.6rem;line-height:1.3;color:var(--ink);margin:0 0 28px}.vc-art{max-width:340px}.guided{padding:34px 36px 36px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-lg);min-height:520px}.guided h1{font-size:clamp(1.8rem,3.4vw,2.6rem);margin:6px 0 24px;max-width:22ch}.guided-progress{height:6px;border-radius:99px;background:var(--line);overflow:hidden}.guided-progress span{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .3s ease}.guided-top{display:flex;justify-content:space-between;align-items:center;margin-top:14px;min-height:36px}.guided-step{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.guided-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}.guided-tile{all:unset;box-sizing:border-box;cursor:pointer;display:grid;grid-gap:10px;gap:10px;justify-items:center;padding:18px 10px 14px;border:1.5px solid var(--line);border-radius:16px;background:var(--bg);color:var(--ink);text-align:center}.guided-tile .kind-icon{width:86%}.guided-tile:focus-visible,.guided-tile:hover{border-color:var(--accent);background:var(--accent-soft)}.guided-tile b{font-size:16px}.guided-input{font-size:22px;min-height:64px}.guided-towns{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-gap:8px;gap:8px}.guided-towns button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;width:100%;justify-content:space-between;align-items:center;padding:14px 16px;border:1.5px solid var(--line);border-radius:12px;font-size:18px;font-weight:650;color:var(--ink)}.guided-towns button:focus-visible,.guided-towns button:hover{border-color:var(--accent);background:var(--accent-soft)}.guided-sorry{margin-top:18px;padding:16px 18px;border-radius:12px;background:color-mix(in srgb,var(--wheat) 14%,transparent)}.guided-sorry p{margin:6px 0 0}.guided-checks{list-style:none;margin:0;padding:0;display:grid;grid-gap:14px;gap:14px}.guided-checks li{display:grid;grid-template-columns:28px 1fr;grid-gap:12px;gap:12px;font-size:1.1rem}.guided-checks li:before{content:"✓";display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:800}.guided-promise{margin:24px 0 0;color:var(--ink-soft)}.guided-go{margin-top:22px;min-height:56px;padding:14px 28px;font-size:18px}@media (max-width:900px){.va-hero{padding-top:36px}.pill-search{grid-template-columns:1fr;border-radius:22px;padding:8px;gap:4px}.pill-field{border-radius:14px}.pill-field+.pill-field{border-left:0;border-top:1px solid var(--line)}.pill-go{justify-content:center;min-height:52px;border-radius:14px}.cat-row{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:6px}.cat{flex:none;width:82px}.va-scene{margin:0 -16px}.example-cards,.vb-hero,.vc-wrap{grid-template-columns:1fr;gap:28px}.vb-hero{padding-top:28px}.vb-next{padding:24px 20px}.vc-wrap{padding-top:24px}.vc-art{display:none}.vc-pitch{font-size:1.2rem;margin:0}.guided{padding:22px 18px 26px;min-height:0}.guided-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}@media (max-width:520px){.try-picker{grid-template-columns:1fr}.vb-facts{grid-template-columns:1fr 1fr}.vb-facts div:nth-child(3){padding-left:0;border-left:0}}.va-scene .ts-ground{fill:color-mix(in srgb,var(--accent) 22%,var(--bg))}.pill-hint{max-width:960px;margin:10px auto 0;font-size:14px;color:var(--muted)}.how-steps.how-row{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;max-width:1100px;margin:0 auto}.town-chips{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:900px;margin:0 auto;padding:0}.town-chips a{display:inline-block;padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:inherit;text-decoration:none;font-weight:500}.town-chips a:hover{border-color:var(--accent,currentColor)}@media (max-width:900px){.how-steps.how-row{grid-template-columns:1fr}}.try-picker.one{grid-template-columns:minmax(0,320px)}.answer-found{font-size:17px;margin:0 0 14px}.answer-miss{color:var(--muted);margin:0 0 14px}.answer-facts{display:grid;grid-gap:0;gap:0;margin:22px 0 10px;border-top:1px solid var(--line)}.answer-facts div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.answer-facts dt{color:var(--muted)}.answer-facts dd{margin:0;font-weight:600;text-align:right}.answer-facts .chip{margin-left:10px;font-weight:500}.pill-error{max-width:960px;margin:10px auto 0;color:var(--danger,#b42318);font-weight:600}.pill-go{transition:transform 90ms var(--ease),box-shadow .16s var(--ease),background .16s var(--ease)}.pill-go:active:not(:disabled){transform:scale(.94)}.pill-go.is-thinking,.pill-go.is-thinking:disabled{opacity:1;cursor:progress}.pill-go[data-pending]{color:var(--on-accent)!important}.pill-go[data-pending]:after{display:none}.pill-spin{width:18px;height:18px;border-radius:50%;border:2.4px solid;border-right:2.4px solid transparent;animation:press-spin .7s linear infinite}.pill-thinking{display:flex;align-items:center;justify-content:center;gap:12px;max-width:960px;margin:14px auto 0;font-size:15px;font-weight:600;color:var(--accent)}.pill-thinking-step{animation:pill-step-in .26s var(--ease)}.pill-dots{display:inline-flex;gap:5px}.pill-dots i{width:7px;height:7px;border-radius:50%;background:currentColor;animation:pill-dot 1s ease-in-out infinite}.pill-dots i:nth-child(2){animation-delay:.15s}.pill-dots i:nth-child(3){animation-delay:.3s}@keyframes pill-dot{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@keyframes pill-step-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.pill-go:active:not(:disabled){transform:none}.pill-dots i,.pill-thinking-step{animation:none;opacity:1}.pill-spin{animation-duration:2s}}.pill-field.is-wrong{background:color-mix(in srgb,var(--danger,#b42318) 8%,transparent);box-shadow:inset 0 0 0 2px var(--danger,#b42318)}.plan-prompt{margin-top:18px;padding:22px 24px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-sm,none)}.plan-prompt h3{margin:0 0 6px;font-size:1.2rem}.plan-prompt p{margin:0 0 16px;color:var(--muted);max-width:46rem}.auth-alt{margin:12px 0 0;text-align:center;font-size:14px;color:var(--muted)}.free-answer{max-width:46rem;margin:8px auto 40px}.free-answer .eyebrow{margin-bottom:8px}.free-question{margin:0 0 12px;font-family:var(--font-serif);font-size:1.35rem;color:var(--ink)}.free-answer .zoning-answer{margin:0}.free-answer-stop{padding:28px;border:1px solid var(--line-strong);border-radius:16px;text-align:center}.free-answer-stop h2{font-size:1.4rem;margin:0 0 8px}.free-answer-stop p{color:var(--muted);margin:0 0 18px}.free-follow{margin-top:20px;padding:18px;border:1px solid var(--line-strong);border-radius:16px;background:var(--surface,transparent)}.free-follow label{display:block;font-weight:600;margin-bottom:8px}.free-follow>div{display:flex;gap:8px}.free-follow input{flex:1 1;min-width:0}.free-follow p{margin:8px 0 0;font-size:14px;color:var(--muted)}.answer-hero{grid-template-columns:1fr;max-width:46rem;margin:0 auto}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_d8ebd1{font-family:Inter,Inter Fallback;font-style:normal}.__variable_d8ebd1{--font-inter:"Inter","Inter Fallback"}