:root{--paper:#FBF8F1;--paper2:#F2EDDF;--ink:#14231C;--mute:#55635B;--green:#0E5A43;--hot:#C23B17;--warm:#B8780A;--cold:#4F7384;--line:#D8D0BC;--land:#EEF1E2;--water:#CDE2E8;--park:#D3E4C2;
--head:Erode,Georgia,serif;--body:"General Sans",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:auto}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.5 var(--body);-webkit-font-smoothing:antialiased}
h1,h2{font-family:var(--head);font-weight:700;letter-spacing:-.02em;line-height:1;margin:0}
a{color:var(--green)}button,input{font:inherit;color:inherit}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--paper);padding:8px;z-index:99}
:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.bar{display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,4vw,48px);height:56px;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:20}
.brand{display:flex;gap:8px;align-items:center;font:700 22px var(--head);color:var(--ink);text-decoration:none;letter-spacing:-.02em}
.brand svg{color:var(--green)}
.tabs{display:flex;gap:28px}.tabs a{color:var(--mute);text-decoration:none;font-weight:500;font-size:15px;padding:18px 0 15px;border-bottom:3px solid transparent}
.tabs a svg{display:none}.tabs a[aria-current=page]{color:var(--ink);border-bottom-color:var(--green)}
.note{background:var(--paper2);font-size:13px;color:var(--mute);padding:6px clamp(16px,4vw,48px);border-bottom:1px solid var(--line)}
.banner{background:var(--hot);color:#fff;padding:10px 16px;font-weight:500}
main{outline:none;min-height:70svh}
.pad{padding:clamp(24px,4vw,56px) clamp(16px,4vw,48px);max-width:1200px;margin:0 auto}
.eyebrow{font-size:14px;color:var(--mute);margin:0 0 14px}
.fine{font-size:13px;color:var(--mute);margin:12px 0 0}
.btn{background:var(--green);color:#fff;border:0;padding:14px 22px;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block;min-height:48px}
.btn:hover{background:#0A4533}.btn:disabled{opacity:.55;cursor:default}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}.btn.ghost:hover{background:var(--ink);color:var(--paper)}
input{background:#fff;border:1.5px solid var(--ink);padding:12px 14px;width:100%;min-height:48px;border-radius:0}
label{display:block;font-weight:500;font-size:14px;margin:14px 0 6px}
.field-err{color:var(--hot);font-size:14px;min-height:20px;margin:8px 0 0}
.skel{display:grid;gap:14px;margin:24px 0}.skel i{display:block;height:18px;background:linear-gradient(90deg,var(--paper2),#E8E1CE,var(--paper2));background-size:200% 100%;animation:sh 1.2s infinite linear}
.skel.big i{height:90px;width:50%!important}
@keyframes sh{to{background-position:-200% 0}}
.err{border-left:4px solid var(--hot);padding:14px 18px;background:#fff;margin:24px 0}.err p{margin:0 0 12px}
.landing{display:grid;grid-template-columns:6fr 5fr;min-height:calc(100svh - 90px)}
.landing .copy{padding:clamp(28px,5vw,72px);align-self:center}
.landing h1{font-size:clamp(52px,6.2vw,96px);margin-bottom:22px}
.rise-wrap{display:block;overflow:hidden;padding-bottom:.08em}.rise{display:inline-block}
.lede{font-size:18px;max-width:30em;color:var(--mute)}
#codeForm{margin-top:28px;max-width:520px}#codeForm .row{display:flex;gap:0}#codeForm input{text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.landing .photo{position:relative;overflow:hidden;min-height:340px}.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% 60%}
.est-top{margin-bottom:28px}.est h1{font-size:22px;font-family:var(--body);font-weight:500;letter-spacing:0;color:var(--mute)}
.big{font:700 clamp(64px,10vw,128px)/1 var(--head);letter-spacing:-.04em;margin:6px 0 0}
.range{font-size:22px;font-weight:600;margin:6px 0 0}
.est-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:32px;align-items:start}
.map{width:100%;height:auto;display:block;border:1px solid var(--line)}
.land{fill:var(--land)}.water{fill:var(--water)}.park{fill:var(--park)}.st{stroke:#fff;stroke-width:16;fill:none}
.sl,.pl{font:500 12px var(--body);fill:#7B877F}.pl{fill:#5C7A4A}
.tag{fill:var(--ink)}.tt{fill:#fff;font:600 12px var(--body)}.tip{fill:var(--ink)}
.pin{cursor:pointer}.pin.on .tag,.pin.on .tip{fill:var(--hot)}.pin:focus-visible{outline:none}.pin:focus-visible .tag{stroke:var(--green);stroke-width:3}
.halo{fill:rgba(14,90,67,.18)}.home{fill:var(--green)}.yt{font:700 13px var(--body);fill:var(--green)}
.comps h2,.get h2{font-size:28px;margin-bottom:12px}.comps ul{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.comp{border-bottom:1px solid var(--line)}.comp-head{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:0;padding:14px 0;text-align:left;cursor:pointer;min-height:56px}
.ca{display:grid}.ca small{color:var(--mute)}.cp{font:700 20px var(--head)}
.comp-head[aria-expanded=true] .cp{color:var(--green)}
.comp-body{display:flex;gap:18px;flex-wrap:wrap;padding:0 0 14px;color:var(--mute);font-size:14px}
.get{margin-top:48px;border-top:2px solid var(--ink);padding-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:40px}
.get p{color:var(--mute);max-width:30em}fieldset{border:0;padding:0;margin:18px 0 0}legend{font-weight:500;font-size:14px;margin-bottom:4px}
.opt{display:flex;gap:10px;align-items:center;font-weight:400;font-size:16px;margin:0;padding:10px 0;border-bottom:1px solid var(--line);cursor:pointer}.opt input{width:20px;min-height:0;accent-color:var(--green)}
#send{margin-top:8px;width:100%}.done h2{font-size:34px;margin-bottom:12px}
.inbox-head{margin-bottom:28px}.inbox-head h1{font-size:clamp(40px,5vw,64px)}.inbox-head p{color:var(--mute);margin:8px 0 0}
.group{margin-bottom:36px}.group h2{font-size:26px;display:flex;align-items:baseline;gap:12px;padding-left:14px;border-left:6px solid var(--line)}
.group.hot h2{border-color:var(--hot)}.group.warm h2{border-color:var(--warm)}.group.cold h2{border-color:var(--cold)}
.group h2 em{font:500 16px var(--body);color:var(--mute)}.hint{margin:6px 0 10px 20px;color:var(--mute);font-size:14px}
.group ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.lead{border-bottom:1px solid var(--line);border-left:6px solid transparent}.lead.hot{border-left-color:var(--hot)}.lead.warm{border-left-color:var(--warm)}.lead.cold{border-left-color:var(--cold)}
.lead-head{display:grid;grid-template-columns:1.4fr 1fr 150px;gap:12px;align-items:center;width:100%;background:none;border:0;padding:14px 14px;text-align:left;cursor:pointer;min-height:64px}
.who{display:grid}.who small{color:var(--mute)}.val{font-weight:600}.when{color:var(--mute);font-size:14px;text-align:right}
.lead-body{padding:0 14px 16px}.lead-body p{margin:0 0 12px;color:var(--mute)}
.empty{margin:10px 0 0 20px;color:var(--mute)}
.back{font-size:14px;display:inline-block;margin-bottom:18px}
.card-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:6px}.card h1{font-size:clamp(44px,6vw,80px)}
.tierline{margin:12px 0 24px;color:var(--mute)}.t-hot{color:var(--hot)}.t-warm{color:var(--warm)}.t-cold{color:var(--cold)}.tierline b{font-size:18px}
dl{margin:0}dl>div{padding:12px 0;border-bottom:1px solid var(--line)}dt{font-size:13px;color:var(--mute)}dd{margin:2px 0 0;font-weight:500}dd.n{font:700 28px var(--head)}
.draft{background:#fff;border:1.5px solid var(--ink);padding:24px;align-self:start}.draft h2{font-size:26px;margin-bottom:14px}
.msg{font-size:18px;line-height:1.5;margin:0 0 18px;border-left:4px solid var(--green);padding-left:16px}.actions{display:flex;gap:12px;flex-wrap:wrap}
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink);border-bottom:1px solid var(--line);margin-bottom:36px}
.stats div{padding:20px 20px 20px 0;display:grid;gap:4px}.stats div+div{padding-left:20px;border-left:1px solid var(--line)}
.stats span{font-size:13px;color:var(--mute)}.stats b{font:700 clamp(28px,3.4vw,46px) var(--head);letter-spacing:-.02em}.stats small{color:var(--mute);font-size:13px}
.funnel{margin-bottom:40px;max-width:760px}.funnel h2{font-size:26px;margin-bottom:14px}
.fn{display:grid;grid-template-columns:130px 1fr 60px;gap:12px;align-items:center;margin:8px 0}.fn i{display:block;height:26px;background:var(--green)}.fn:nth-child(3) i{background:#2F8A6A}.fn:nth-child(4) i{background:var(--hot)}.fn b{text-align:right}
.sub{font-size:26px;margin-bottom:12px}.batchlist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.batch{display:grid;grid-template-columns:1fr 2fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);align-items:center}.batch small{display:block;color:var(--mute)}
.batch dl{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.batch dl>div{border:0;padding:0}.batch dd{font-weight:600}.batch dd.strong{font:700 24px var(--head);color:var(--green)}
.empty-b p{margin:0;color:var(--mute)}
@media screen and (max-width:900px){
  body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
  .bar{justify-content:center}
  .tabs{position:fixed;left:0;right:0;bottom:0;background:var(--paper);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding-bottom:env(safe-area-inset-bottom);z-index:30}
  .tabs a{display:grid;justify-items:center;gap:2px;font-size:12px;padding:8px 0 8px;border-bottom:0;border-top:3px solid transparent}
  .tabs a svg{display:block;width:24px;height:24px}.tabs a[aria-current=page]{border-top-color:var(--green)}
  .landing{grid-template-columns:1fr;grid-template-rows:44svh auto;min-height:0}.landing .photo{order:-1;min-height:0}
  .landing h1{font-size:52px}.landing .copy{padding:24px 16px 32px}.lede{font-size:16px}
  #codeForm .row{flex-direction:column;gap:10px}
  .est-grid,.get,.card-grid{grid-template-columns:1fr;gap:28px}
  .lead-head{grid-template-columns:1fr auto;grid-template-areas:"who val" "when when"}.who{grid-area:who}.val{grid-area:val;font-size:14px}.when{grid-area:when;text-align:left}
  .stats{grid-template-columns:1fr 1fr}.stats div:nth-child(3){padding-left:0;border-left:0}.stats div:nth-child(n+3){border-top:1px solid var(--line)}
  .batch{grid-template-columns:1fr}.batch dl{grid-template-columns:1fr 1fr}
  .fn{grid-template-columns:96px 1fr 44px}
  .big{font-size:72px}
}
@media (prefers-reduced-motion:reduce){.skel i{animation:none}}
/* ---- brokerage views ---- */
.tabs[hidden]{display:none}
.mode{font-size:14px;font-weight:500;color:var(--green);text-decoration:underline;text-underline-offset:3px}
.sr{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.linkbtn{background:none;border:0;padding:0;color:var(--green);text-decoration:underline;cursor:pointer;font-size:inherit}
.reset{margin-top:40px}
select{background:#fff;border:1.5px solid var(--ink);padding:10px 12px;min-height:48px;border-radius:0;font:inherit}
.demo-note{background:var(--paper2);border-left:4px solid var(--warm);padding:10px 14px;font-size:14px;margin:0 0 18px;max-width:46em}
.stats.three{grid-template-columns:repeat(3,1fr)}
.alert-row{display:block;border-left:6px solid var(--hot);background:#fff;padding:14px 18px;margin:0 0 36px;color:var(--ink);text-decoration:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.alert-row b{color:var(--hot)}
.olist,.alist,.alist2,.flist,.glist,.rlist{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.orow,.arow{display:grid;grid-template-columns:40px 1.2fr 3fr;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
.rk{font:700 28px var(--head);color:var(--green)}
.on{display:grid}.on small{color:var(--mute)}
.mini{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.mini>div{border:0;padding:0}.mini dd{font-weight:600}
.pairs{display:grid;gap:18px;max-width:860px}.pair{display:grid;grid-template-columns:130px 1fr;gap:14px;align-items:center}
.bars{display:grid;gap:6px}.bar2{display:grid;grid-template-columns:76px 1fr 64px;gap:10px;align-items:center;font-size:14px}.bar2 span{color:var(--mute)}.bar2 i{display:block;height:20px}.bar2 .sp{background:#8E9A92}.bar2 .ld{background:var(--green)}.bar2 em{font-style:normal;font-weight:600;text-align:right}
.seg{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:24px}.seg button{background:none;border:0;border-bottom:3px solid transparent;padding:10px 0;font-weight:500;color:var(--mute);cursor:pointer;min-height:44px}.seg button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--green)}
.filters{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:18px}.filters label{margin:0}.filters select{display:block;margin-top:6px;min-width:200px}
.more{margin-top:18px}
.stack{display:flex;height:22px;gap:2px}.stack i{display:block;min-width:0}.stack.big{height:44px}
.b-m5{background:var(--green)}.b-h1{background:#4C9A7C}.b-d1{background:var(--warm)}.b-late{background:var(--hot)}.b-none{background:#8E9A92}
.legend{list-style:none;display:flex;gap:6px 22px;flex-wrap:wrap;padding:0;margin:14px 0 30px;font-size:14px}.legend li{display:flex;gap:8px;align-items:center}.legend b{margin-left:4px}
.sw{display:inline-block;width:14px;height:14px}
.srow{display:grid;grid-template-columns:130px 1fr 260px;gap:14px;align-items:center;margin:10px 0}.srow span{font-size:14px;color:var(--mute)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:30px}
.fast{margin:0;padding:0;list-style:none;border-top:2px solid var(--ink)}.fast li{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.fast li span{display:grid}.fast small{color:var(--mute)}.fast.slow b:last-child{color:var(--hot)}.fast b:last-child{color:var(--green);font:700 20px var(--head)}
.count{margin:0 0 10px;color:var(--mute)}.count b{font:700 28px var(--head);color:var(--hot);margin-right:6px}
.frow{display:grid;grid-template-columns:1.6fr 1fr 1fr 2fr;gap:16px;align-items:center;padding:14px 0 14px 14px;border-bottom:1px solid var(--line);border-left:6px solid var(--hot)}
.wait b{color:var(--hot)}.wait small,.hold small{display:block;color:var(--mute)}
.act{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.act select{min-width:0;flex:1 1 130px}.act .field-err{flex-basis:100%;margin:0;min-height:0}
.okbox{border-left:6px solid var(--green);background:#fff;padding:18px 20px}.okbox p{margin:6px 0 0;color:var(--mute)}
.grow{display:grid;grid-template-columns:1.2fr 100px 2.4fr;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.kept{display:grid}.kept b{font:700 30px var(--head);color:var(--green)}.kept small{color:var(--mute)}.to{margin:0;color:var(--mute)}
.pools{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px}.pool h3{font:700 22px var(--head);margin:0 0 8px;border-bottom:2px solid var(--ink);padding-bottom:8px}.pool h3 em{font:500 15px var(--body);color:var(--mute);margin-left:8px}
.pool ul{list-style:none;margin:0;padding:0}.prow{display:grid;grid-template-columns:1fr;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.prow .go{justify-self:start}
.addform{margin-bottom:34px}.addrow{display:grid;grid-template-columns:2fr 1fr auto;gap:14px;align-items:end}.addrow label{margin-top:0}
.agent{border-bottom:1px solid var(--line)}.agent.left .on b{color:var(--mute)}
.agent-head{display:grid;grid-template-columns:1.4fr 1.6fr 90px;gap:12px;align-items:center;width:100%;background:none;border:0;padding:14px 0;text-align:left;cursor:pointer;min-height:60px}
.agent-head .link{color:var(--green);font-size:14px;overflow-wrap:anywhere}.agent-head .cnt{text-align:right;color:var(--mute);font-size:14px}
.agent-body{padding:6px 0 22px}.qrbox{display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:start}
.qr{width:200px;background:#fff;border:1.5px solid var(--ink);padding:6px}.qr svg{display:block;width:100%;height:auto}
.url{font:700 22px var(--head);margin:0 0 14px;overflow-wrap:anywhere}.leave{margin-top:14px;font-size:14px}.confirm{margin:0 0 12px}
.rlist li{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.rlist small{color:var(--mute)}
.join-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:48px;align-items:start}
details{margin-top:18px;border-top:1px solid var(--line);padding-top:12px}summary{cursor:pointer;font-weight:500}
.diff{font:700 clamp(26px,3.2vw,40px)/1.1 var(--head);margin:0 0 20px}.diff.up b{color:var(--green)}.diff.down b{color:var(--hot)}
.cmp{width:100%;border-collapse:collapse;border-top:2px solid var(--ink)}.cmp th,.cmp td{padding:12px 10px 12px 0;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.cmp thead th{font-weight:600;font-size:14px}.cmp thead small{display:block;font-weight:400;color:var(--mute)}
.cmp tbody th{font-weight:500}.cmp td{font-weight:600}.cmp tr.tot th,.cmp tr.tot td{font:700 24px var(--head);border-bottom:2px solid var(--ink)}
.contact{margin-top:48px;border-top:2px solid var(--ink);padding-top:26px}.contact h2{font-size:28px;margin-bottom:8px}.contact>p{color:var(--mute)}
.okline{color:var(--green);font-weight:600;min-height:20px;margin:8px 0 0}
@media screen and (max-width:900px){
  .bar{justify-content:space-between}.mode{font-size:13px}
  #tabsBrk{grid-template-columns:repeat(6,1fr)}#tabsBrk a{font-size:11px}
  .orow,.arow{grid-template-columns:32px 1fr}.orow .mini,.arow .mini{grid-column:1/-1;grid-template-columns:1fr 1fr}
  .pair{grid-template-columns:1fr}.srow{grid-template-columns:1fr}.two,.pools,.join-grid{grid-template-columns:1fr;gap:24px}
  .frow{grid-template-columns:1fr 1fr}.frow .act,.frow .on{grid-column:1/-1}
  .grow{grid-template-columns:1fr 80px}.grow .to{grid-column:1/-1}
  .stats.three{grid-template-columns:1fr 1fr 1fr}.stats.three b{font-size:26px}
  .addrow{grid-template-columns:1fr}.agent-head{grid-template-columns:1fr auto}.agent-head .link{grid-column:1/-1;grid-row:2}
  .qrbox{grid-template-columns:1fr}.qr{width:200px}.rlist li{grid-template-columns:1fr}
  .cmp thead th:first-child{display:none}.cmp{font-size:14px}.cmp tr.tot th,.cmp tr.tot td{font-size:19px}
}
/* ---- phone: the page never scrolls, only the panel inside it does ---- */
.lede-more{display:inline}
@media screen and (max-width:900px){
  html,body{height:100%;overflow:hidden;overscroll-behavior:none}
  body{height:100svh;height:100dvh;display:flex;flex-direction:column;padding-bottom:0}
  body.kbd{height:var(--vvh,100dvh)}
  .bar{flex:none;position:static;padding-top:env(safe-area-inset-top);height:calc(56px + env(safe-area-inset-top))}
  .note{flex:none;font-size:12px;padding:4px 16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .banner{flex:none}
  main{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;padding-bottom:calc(60px + env(safe-area-inset-bottom))}
  body.kbd main{padding-bottom:12px}
  body.kbd .tabs{display:none}
  main>.pad{width:100%;flex:none}
  main>.pad.est,main>.pad.join{padding-top:20px}
  .tabs{padding-bottom:env(safe-area-inset-bottom)}
  .tabs a{padding:6px 0}
  /* postcard page: everything on one screen */
  .landing{display:flex;flex-direction:column;flex:1 1 0;min-height:0;width:100%}
  .landing .photo{order:-1;flex:1 1 0;min-height:0;max-height:30svh;max-height:30dvh}
  .landing .copy{flex:none;padding:14px 16px 10px;align-self:stretch}
  .landing h1{font-size:clamp(32px,9.6vw,46px);margin-bottom:10px}
  .landing .eyebrow{margin:0 0 6px;font-size:13px}
  .lede{font-size:15px;margin:0}.lede-more{display:none}
  #codeForm{margin-top:12px;max-width:none}#codeForm label{margin:0 0 4px}
  #codeForm .row{gap:8px}#codeForm input,#codeForm .btn{min-height:46px;padding-top:9px;padding-bottom:9px}
  .field-err{min-height:0;margin:6px 0 0}
  .landing .fine{margin:8px 0 0}
}
@media screen and (max-width:900px) and (max-height:700px){
  .landing .fine,.landing .eyebrow{display:none}
  .landing h1{font-size:clamp(30px,8.6vw,38px);margin-bottom:8px}
  .landing .copy{padding:10px 16px 8px}
}
