/* RWB RealEstate - sits on top of the Right Way Branding 2026 design system (rwb26.css). */
:root{--red:#DC2626;--red2:#ef4444}
.re-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:18px;padding-bottom:18px;position:relative;z-index:5}
.re-top .lg{display:flex;align-items:center;gap:10px;font:900 15px/1 var(--disp);font-stretch:125%;text-transform:uppercase;letter-spacing:-.01em}
.re-top .lg img{height:34px;width:auto}
.re-top .lg em{font-style:normal;color:var(--mute)}
.re-top nav{display:flex;align-items:center;gap:clamp(14px,2.2vw,30px);font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.re-top nav a:not(.btn26){color:#cfcbc8;transition:color .2s}
.re-top nav a:not(.btn26):hover,.re-top nav a[aria-current]{color:#fff}
.btn26.sm{padding:12px 20px;font-size:12px}
@media(max-width:760px){.re-top nav a:not(.btn26){display:none}}
.re-ph{padding:clamp(30px,6vh,80px) 0 clamp(30px,4vw,56px);position:relative}
.re-ph .lead{margin-top:18px}
.sec.tight{padding:clamp(50px,7vw,100px) 0}
.lead-card .top b small{font-size:.38em;font-weight:700;opacity:.7}
.hero .frame video,.hero .frame img{aspect-ratio:auto}

/* problem / offer */
.pains{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pain{border:1px solid var(--line);border-radius:18px;padding:26px;font-size:17px;color:#e9e5e2;background:var(--card)}
.pain::before{content:"\00d7";display:block;font:900 30px/1 var(--disp);color:var(--red);margin-bottom:12px}
.pain b{display:block;color:#fff;margin-bottom:4px}
.pain span{color:var(--mute);font-size:15px}
.steps{--n:3}
.faq{margin:0 auto}
.offerbox{max-width:760px;margin:0 auto;text-align:center;border-radius:28px;padding:clamp(34px,5vw,64px);background:linear-gradient(150deg,#DC2626,#6d0a0f)}
.offerbox .big{font:900 clamp(38px,6vw,78px)/.95 var(--disp);font-stretch:125%;text-transform:uppercase;margin:14px 0}
.offerbox p{color:#ffe0e0;max-width:46ch;margin:0 auto 22px}
.offerbox .btn26{background:#fff;color:var(--red)}

/* plans */
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.plan{border:1px solid var(--line);border-radius:22px;padding:32px 30px;background:var(--card);display:flex;flex-direction:column;gap:10px;position:relative}
.plan.hot{background:linear-gradient(150deg,#DC2626,#6d0a0f);border-color:transparent;box-shadow:0 40px 120px -40px rgba(220,38,38,.7)}
.plan .tag{font:500 10.5px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.plan.hot .tag{color:#fff}
.plan h3{font:900 26px/1 var(--disp);font-stretch:122%;text-transform:uppercase}
.plan .who{color:var(--mute);font-size:14.5px}
.plan.hot .who{color:#ffdada}
.plan .big{font:900 clamp(54px,5.6vw,84px)/.9 var(--disp);font-stretch:125%;margin:10px 0 6px}
.plan .big small{font-size:.26em;font-weight:700;opacity:.7;margin-left:6px}
.plan .ck{margin:8px 0 24px}
.plan .btn26{margin-top:auto;justify-content:center}
.plan.hot .btn26{background:#fff;color:var(--red)}
.addon{margin-top:18px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;border:1px solid var(--line2);border-radius:22px;padding:26px 30px;background:linear-gradient(100deg,#141111,#0d0d0d)}
.addon h3{font:900 20px/1.1 var(--disp);font-stretch:120%;text-transform:uppercase}
.addon p{color:var(--mute);font-size:15px;margin-top:6px;max-width:64ch}
.addon .pr{font:900 clamp(30px,3.4vw,46px)/1 var(--disp);font-stretch:125%;text-align:right;white-space:nowrap}
.addon .pr s{font-size:.45em;opacity:.5;font-weight:600;margin-right:8px}
.addon .pr small{display:block;font:500 10.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-top:8px}
.cmp{width:100%;border-collapse:collapse;font-size:15.5px}
.cmp th,.cmp td{padding:16px 14px;border-bottom:1px solid var(--line);text-align:left}
.cmp thead th{font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.cmp tbody th{font-weight:600;color:#fff}
.cmp td{color:#d5d1ce}
.cmp-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:22px;padding:8px 16px;background:var(--card)}
@media(max-width:980px){.plans{grid-template-columns:1fr}.pains{grid-template-columns:1fr 1fr}.addon{grid-template-columns:1fr}.addon .pr{text-align:left}}
@media(max-width:560px){.pains{grid-template-columns:1fr}}

/* pipeline board */
.board{display:grid;grid-template-columns:repeat(5,minmax(218px,1fr));gap:12px;overflow-x:auto;padding:16px;background:#0c0c0c;scrollbar-width:thin;scrollbar-color:var(--red) #151515}
.col{background:#101010;border:1px solid var(--line);border-radius:16px;padding:12px;min-height:230px;display:flex;flex-direction:column;gap:10px;transition:border-color .2s,background .2s}
.col.over{border-color:var(--red);background:rgba(220,38,38,.09)}
.col-h{display:flex;justify-content:space-between;align-items:center;font:800 12.5px/1 var(--disp);font-stretch:118%;text-transform:uppercase;letter-spacing:.04em;padding:4px 2px 6px}
.col-h b{font:500 11px var(--mono);color:var(--mute);border:1px solid var(--line2);border-radius:999px;padding:4px 9px}
.lc{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 13px;cursor:grab;font-size:13px;transition:border-color .2s,box-shadow .2s;user-select:none}
.lc:hover{border-color:var(--red);box-shadow:0 10px 30px -12px rgba(220,38,38,.6)}
.lc:active{cursor:grabbing}
.lc.drag{opacity:.35}
.lc strong{display:block;font-size:14px;color:#fff;line-height:1.3}
.lc .ad{color:var(--mute);font-size:12px;margin:2px 0 9px}
.lc .row{display:flex;justify-content:space-between;align-items:center;gap:8px}
.lc .src{font:500 9.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#ff8a8a;border:1px solid rgba(220,38,38,.45);border-radius:6px;padding:3px 6px}
.lc .val{font-weight:700;color:#fff}
.lc .mv{display:block;width:100%;margin-top:10px;padding:8px;border-radius:8px;border:1px solid var(--line2);background:none;color:#cfcbc8;font:500 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.lc .mv:hover{border-color:var(--red);color:#fff}
.board.mini .mv{display:none}
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.kpi{border:1px solid var(--line);border-radius:16px;padding:18px 20px;background:var(--card)}
.kpi b{display:block;font:900 clamp(24px,2.8vw,38px)/1 var(--disp);font-stretch:122%}
.kpi span{font:500 10.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);display:block;margin-top:8px}
.kpi.r b{color:var(--red)}
.bar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.badge{font:500 10.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#ff8a8a;border:1px solid rgba(220,38,38,.45);border-radius:999px;padding:7px 12px}
.pipe-frame{border:1px solid var(--line2);border-radius:20px;overflow:hidden;box-shadow:0 60px 140px -50px rgba(220,38,38,.5)}
@media(max-width:760px){.kpis{grid-template-columns:1fr 1fr}}
dialog.dlg{border:1px solid var(--line2);border-radius:24px;background:#121111;color:var(--ink);padding:clamp(22px,3vw,34px);width:min(520px,calc(100vw - 28px))}
dialog.dlg::backdrop{background:rgba(0,0,0,.75);backdrop-filter:blur(4px)}
dialog.dlg h3{font:900 22px/1 var(--disp);font-stretch:122%;text-transform:uppercase;margin-bottom:18px}

/* signup */
.su-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:clamp(22px,4vw,56px);align-items:start;margin-top:clamp(26px,4vw,44px)}
.su-form{border:1px solid var(--line);border-radius:24px;padding:clamp(22px,3vw,38px);background:var(--card)}
.r26 .su-form .panel{display:grid;gap:14px}
.r26 .su-form .panel[hidden]{display:none}
.stepper{display:flex;gap:8px;flex-wrap:wrap;list-style:none;margin:22px 0 0;padding:0;font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.stepper li{padding:9px 14px;border:1px solid var(--line);border-radius:999px}
.stepper li.on{color:#fff;border-color:var(--red);background:rgba(220,38,38,.16)}
.stepper li.ok{color:#cfcbc8;border-color:var(--line2)}
.picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.pick{position:relative;cursor:pointer;border:1px solid var(--line2);border-radius:16px;padding:16px;transition:.2s;display:block}
.pick:has(input:checked){border-color:var(--red);background:rgba(220,38,38,.14);box-shadow:0 0 0 1px var(--red) inset}
.r26 .rwbf .pick input{position:absolute;opacity:0;pointer-events:none;width:1px}
.pick b{display:block;font:800 14px/1.1 var(--disp);font-stretch:118%;text-transform:uppercase}
.pick i{display:block;font:900 30px/1 var(--disp);font-stretch:125%;font-style:normal;margin:8px 0 4px}
.pick i small{font-size:.4em;opacity:.7}
.pick span{font-size:12.5px;color:var(--mute)}
.pick em{position:absolute;top:-9px;right:12px;font:500 9.5px var(--mono);font-style:normal;letter-spacing:.12em;text-transform:uppercase;background:var(--red);color:#fff;border-radius:999px;padding:3px 8px}
.opt{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line2);border-radius:16px;padding:16px;cursor:pointer;font-size:14px}
.opt:has(input:checked){border-color:var(--red);background:rgba(220,38,38,.1)}
.opt input{margin-top:3px}
.opt b{display:block;color:#fff}
.opt small{color:var(--mute);font-size:13px}
.agree{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:#cfcbc8}
.agree a{text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}
.r26 .su-form .btn-row{flex-wrap:nowrap}
.r26 .su-form .btn-row .rwbf-btn{width:auto;flex:1;margin-top:0}
#terrs{display:grid;gap:10px}
.su-sum{position:sticky;top:20px}
.su-sum dl{margin:0;display:grid;gap:12px}
.su-sum dl div{display:flex;justify-content:space-between;gap:14px;font-size:15px;border-bottom:1px solid var(--line);padding-bottom:12px}
.su-sum dt{color:var(--mute)}
.su-sum dd{margin:0;font-weight:700;text-align:right}
.su-sum .tot{font:900 clamp(40px,4vw,58px)/.9 var(--disp);font-stretch:125%;margin:18px 0 6px}
.su-sum .tot small{font-size:.36em;opacity:.7}
.done h2{font:900 clamp(28px,4vw,48px)/1 var(--disp);font-stretch:125%;text-transform:uppercase}
.done ol{margin:8px 0 8px;padding:0;list-style:none;counter-reset:n;display:grid;gap:12px}
.done ol li{counter-increment:n;display:flex;gap:14px;align-items:baseline;color:#d9d5d2}
.done ol li::before{content:"0" counter(n);font:500 12px var(--mono);color:var(--red);letter-spacing:.1em}
@media(max-width:900px){.su-grid{grid-template-columns:1fr}.su-sum{position:static;order:-1}}
@media(max-width:560px){.picks{grid-template-columns:1fr}}

/* footer + sticky cta */
.fn-foot{border-top:1px solid var(--line);padding:34px 0 110px;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;position:relative;z-index:3}
.fn-foot.wrap{padding-left:clamp(20px,4vw,56px);padding-right:clamp(20px,4vw,56px)}
.fn-foot a{color:#b9b5b2}.fn-foot a:hover{color:#fff}
.sticky{position:fixed;left:12px;right:12px;bottom:12px;z-index:900;display:none;justify-content:center;transform:translateY(140%);transition:transform .5s var(--ease)}
.sticky.on{transform:none}
.sticky .btn26{width:100%;justify-content:center;padding:18px;box-shadow:0 20px 60px rgba(0,0,0,.8)}
@media(max-width:860px){.sticky{display:flex}}

/* admin */
.adm{padding:clamp(24px,4vw,50px) 0 80px;position:relative;z-index:3}
.adm-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0}
.adm-tabs a{font:500 11.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:10px 16px;border-radius:999px;border:1px solid var(--line2);color:#cfcbc8}
.adm-tabs a.on,.adm-tabs a:hover{background:var(--red);border-color:var(--red);color:#fff}
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:var(--card)}
.tbl{width:100%;border-collapse:collapse;font-size:14px;white-space:nowrap}
.tbl th,.tbl td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left}
.tbl th{font:500 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--red)}
.tbl td{color:#d9d5d2;max-width:340px;overflow:hidden;text-overflow:ellipsis}
.empty{padding:40px;text-align:center;color:var(--mute)}
.login{max-width:440px;margin:12vh auto 0}
