/* RealtyListingCo guide action modules v2 — CSP-safe. All classes prefixed .rlca */
.rlca{--ox:#0B2545;--ox2:#13315C;--gold:#C9A66B;--sun:#E8B860;--gd:#8E6E3C;--ink:#22201C;--mu:#625C52;--rule:#E2DBCC;--note:#F6F1E6;--paper:#FBF8F2;--ok:#2F6B47;
  font-family:"Source Sans 3",Arial,sans-serif;color:var(--ink);box-sizing:border-box;margin:40px 0}
.rlca *{box-sizing:border-box}
.rlca a{color:inherit}
.rlca h3,.rlca h4{font-family:"EB Garamond",Georgia,serif;font-weight:500;color:var(--ox);margin:0;line-height:1.15}
.rlca p{margin:0}
.rlca .kk{font:700 11.5px "Source Sans 3",Arial,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--gd);margin-bottom:8px}
.rlca .b{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;border:0;border-radius:4px;font:700 17px "Source Sans 3",Arial,sans-serif;cursor:pointer;text-decoration:none;transition:background .2s}
.rlca .b.nv{background:var(--ox);color:#fff}.rlca .b.nv:hover{background:var(--ox2)}
.rlca .b.gd{background:var(--sun);color:var(--ox)}.rlca .b.gd:hover{background:#F0C673}
.rlca .b.ln{background:#fff;color:var(--ox);box-shadow:inset 0 0 0 1px #CFC6B3}.rlca .b.ln:hover{box-shadow:inset 0 0 0 1px var(--ox)}
.rlca .fine{font-size:15px;color:var(--mu);line-height:1.45}
.rlca .sr{position:absolute;left:-9999px}

/* ---------- A. step done button (inside each guide step) ---------- */
.rlca-done{display:inline-flex;align-items:center;gap:10px;margin:18px 0 6px;padding:10px 16px 10px 12px;border:1px solid #CFC6B3;border-radius:999px;background:#fff;font:600 17px "Source Sans 3",Arial,sans-serif;color:var(--ox,#0B2545);cursor:pointer}
.rlca-done::before{content:"";width:20px;height:20px;border-radius:50%;border:2px solid #CFC6B3;flex:none}
.rlca-done[aria-pressed="true"]{background:#E8F1EB;border-color:#2F6B47;color:#2F6B47}
.rlca-done[aria-pressed="true"]::before{content:"✓";border:0;background:#2F6B47;color:#fff;font-size:14px;font-weight:800;display:grid;place-items:center}

/* ---------- A. progress tracker (fixed bottom bar) ---------- */
.rlca.prog{position:fixed;left:0;right:0;bottom:0;z-index:50;margin:0;background:var(--ox);color:#fff;box-shadow:0 -12px 30px -12px rgba(0,0,0,.35);transform:translateY(110%);transition:transform .35s}
.rlca.prog.on{transform:none}
.rlca.prog .in{max-width:1180px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:22px}
.rlca.prog .lbl{flex:none;font-weight:700;font-size:14.5px;white-space:nowrap}
.rlca.prog .lbl b{color:var(--sun)}
.rlca.prog .bar{flex:1;height:8px;border-radius:99px;background:rgba(255,255,255,.18);overflow:hidden;min-width:80px}
.rlca.prog .bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold),var(--sun));border-radius:99px;transition:width .4s}
.rlca.prog .msg{flex:none;font-size:14.5px;color:#D5DCE6;max-width:340px}
.rlca.prog .msg a{color:var(--sun);font-weight:700}
.rlca.prog .x{flex:none;background:none;border:0;color:#A9B8CB;font-size:22px;cursor:pointer;line-height:1;padding:4px}

/* unlock card (appears in the article after step 3) */
.rlca.unlock{display:none;border:1px solid var(--gold);background:var(--paper);border-radius:8px;padding:24px 26px;grid-template-columns:96px 1fr;gap:22px;align-items:center}
.rlca.unlock.on{display:grid}
.rlca.unlock img{width:96px;height:96px;object-fit:cover;border-radius:4px;border:1px solid var(--rule)}
.rlca.unlock h3{font-size:25px;margin:2px 0 6px}
.rlca.unlock p{font-size:16.5px;line-height:1.5;color:#3B372F}
.rlca.unlock .row{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin-top:14px}
.rlca.unlock .pr{font-weight:700;color:var(--ox)}

/* ---------- B. next-step ladder ---------- */
.rlca.lad{border-top:3px solid var(--ox);padding-top:22px}
.rlca.lad > h3{font-size:28px;margin-bottom:6px}
.rlca.lad > p{font-size:16.5px;color:var(--mu);margin-bottom:20px}
.rlca.lad .cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.rlca.lad .c{position:relative;border:1px solid var(--rule);border-radius:8px;background:#fff;padding:22px 20px 20px;display:flex;flex-direction:column}
.rlca.lad .c.mid{border-color:var(--gold);box-shadow:0 18px 34px -24px rgba(11,37,69,.5)}
.rlca.lad .c p.tier{flex:none;font:700 11.5px "Source Sans 3",Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--mu)}
.rlca.lad .c h4{font-size:22px;margin:6px 0 8px}
.rlca.lad .c p{font-size:15.5px;line-height:1.5;color:#3B372F;flex:1}
.rlca.lad .c ul{margin:10px 0 0;padding:0 0 0 18px;font-size:14.5px;color:#3B372F;line-height:1.5}
.rlca.lad .c .ft{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--rule)}
.rlca.lad .c .ft a{font-weight:700;font-size:17px;color:var(--ox);text-decoration:none;border-bottom:2px solid var(--gold)}
.rlca.lad .c .ft span{font-weight:700;font-size:17px;color:var(--ok)}
.rlca.lad .pill{position:absolute;top:-11px;left:18px;background:var(--sun);color:var(--ox);font-weight:700;font-size:14px;padding:3px 10px;border-radius:99px}

/* ---------- C. contingency questions builder ---------- */
.rlca.qb{border:1px solid var(--rule);border-radius:10px;overflow:hidden;background:#fff}
.rlca.qb .hd{background:var(--ox);color:#fff;padding:22px 26px}
.rlca.qb .hd h3{color:#fff;font-size:28px}
.rlca.qb .hd p{color:#D5DCE6;font-size:18px;margin-top:6px;line-height:1.5}
.rlca.qb .hd .kk{color:var(--sun)}
.rlca.qb form{padding:22px 26px;display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;border-bottom:1px solid var(--rule);background:var(--paper)}
.rlca.qb fieldset{border:0;margin:0;padding:0;min-width:0}
.rlca.qb legend,.rlca.qb label.t{font-weight:700;font-size:14.5px;color:var(--ox);margin-bottom:8px;display:block;padding:0}
.rlca.qb .opts{display:flex;flex-wrap:wrap;gap:8px}
.rlca.qb .opts label{cursor:pointer}
.rlca.qb .opts input{position:absolute;opacity:0;pointer-events:none}
.rlca.qb .opts span{display:inline-block;padding:8px 13px;border:1px solid #CFC6B3;border-radius:99px;background:#fff;font-size:14.5px;font-weight:600;color:var(--ox)}
.rlca.qb .opts input:checked + span{background:var(--ox);border-color:var(--ox);color:#fff}
.rlca.qb .opts input:focus-visible + span{outline:3px solid var(--sun);outline-offset:2px}
.rlca.qb .full{grid-column:1/-1}
.rlca.qb select{width:100%;height:44px;border:1px solid #CFC6B3;border-radius:4px;background:#fff;font:600 17px "Source Sans 3",Arial,sans-serif;color:var(--ox);padding:0 10px}
.rlca.qb .out{padding:24px 26px}
.rlca.qb .out h4{font-size:24px;margin-bottom:4px}
.rlca.qb .out .sub{font-size:17px;color:var(--mu);margin-bottom:14px}
.rlca.qb table{width:100%;border-collapse:collapse;font-size:15.5px}
.rlca.qb th{text-align:left;font:700 14px "Source Sans 3",Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--mu);padding:8px 10px;border-bottom:2px solid var(--rule)}
.rlca.qb td{padding:11px 10px;border-bottom:1px solid var(--rule);vertical-align:top;line-height:1.45}
.rlca.qb td.rlca-who{width:30%;color:var(--gd);font-weight:600;font-size:14.5px}
.rlca.qb .docs{margin-top:16px;background:var(--note);border-radius:6px;padding:14px 16px;font-size:17px;line-height:1.5}
.rlca.qb .docs b{color:var(--ox)}
.rlca.qb .tip{margin-top:12px;border-left:3px solid var(--sun);padding:4px 0 4px 14px;font-size:17px;color:#3B372F}
.rlca.qb .acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;align-items:center}
.rlca.qb .acts .st{font-size:16px;color:var(--ok);font-weight:700}
.rlca.qb .up{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;margin:22px 26px 24px;padding:18px 20px;border:1px dashed var(--gold);border-radius:8px}
.rlca.qb .up b{color:var(--ox);font-size:19px;display:block}
.rlca.qb .up span{font-size:17px;color:var(--mu)}
.rlca.qb .ftn{padding:0 26px 22px}

/* ---------- D. 5-day sprint ---------- */
.rlca.spr{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);border-radius:10px;overflow:hidden;background:var(--ox);color:#fff}
.rlca.spr .l{padding:30px 30px 28px}
.rlca.spr .kk{color:var(--sun)}
.rlca.spr h3{color:#fff;font-size:30px}
.rlca.spr .l > p{color:#D5DCE6;font-size:16.5px;line-height:1.5;margin:10px 0 18px}
.rlca.spr form{display:flex;flex-wrap:wrap;gap:10px}
.rlca.spr input[type=email]{flex:1 1 220px;height:48px;border:0;border-radius:4px;padding:0 14px;font:400 18px "Source Sans 3",Arial,sans-serif;color:var(--ink)}
.rlca.spr .cons{flex-basis:100%;font-size:15px;color:#A9B8CB;line-height:1.45}
.rlca.spr .ok{display:none;margin-top:6px;background:rgba(255,255,255,.08);border-radius:6px;padding:14px 16px;font-size:18px}
.rlca.spr.done form{display:none}.rlca.spr.done .ok{display:block}
.rlca.spr .r{background:linear-gradient(180deg,#173a6a,#0F2D52);padding:28px 28px 24px}
.rlca.spr ol{list-style:none;margin:0;padding:0;counter-reset:d}
.rlca.spr li{counter-increment:d;display:grid;grid-template-columns:54px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:15.5px;line-height:1.4;color:#EEF2F7}
.rlca.spr li::before{content:"Day " counter(d);font:700 14px "Source Sans 3",Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--sun);padding-top:2px}
.rlca.spr li:last-child{border-bottom:0}

/* ---------- responsive ---------- */
@media(max-width:820px){
  .rlca.lad .cols{grid-template-columns:1fr}
  .rlca.spr{grid-template-columns:1fr}
  .rlca.qb form{grid-template-columns:1fr}
}
@media(max-width:560px){
  .rlca.prog .in{flex-wrap:wrap;gap:8px 14px;padding:10px 14px}
  .rlca.prog .bar{flex-basis:100%;order:3}
  .rlca.prog .msg{display:none}
  .rlca.prog .lbl{flex:1}
  .rlca.unlock{grid-template-columns:1fr;padding:20px}
  .rlca.qb .hd,.rlca.qb form,.rlca.qb .out{padding-left:18px;padding-right:18px}
  .rlca.qb .up{grid-template-columns:1fr;margin:18px}
  .rlca.qb .ftn{padding:0 18px 18px}
  .rlca.qb table,.rlca.qb tbody,.rlca.qb tr,.rlca.qb td{display:block;width:100%}
  .rlca.qb thead{display:none}
  .rlca.qb tr{border-bottom:1px solid var(--rule);padding:10px 0}
  .rlca.qb td{border:0;padding:2px 0}
  .rlca.qb td.rlca-who{width:auto}
  .rlca.spr .l,.rlca.spr .r{padding:22px 18px}
  .rlca.spr h3{font-size:26px}
}
@media print{.rlca.prog,.rlca.spr,.rlca.qb form,.rlca.qb .acts,.rlca.qb .up{display:none!important}}
@media(prefers-reduced-motion:reduce){.rlca,.rlca *{transition:none!important}}

/* Integration with the approved universal guide; no extra font downloads. */
.rlca .answer,.rlca.spr li label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.rlca input[type=checkbox]{width:20px;height:20px;min-width:20px;margin:2px 0;accent-color:#C9A66B}
.rlca .answer:has(input:checked) span{text-decoration:line-through;color:#526455}
.rlca :focus-visible,.rlca-done:focus-visible{outline:3px solid #C9A66B;outline-offset:3px}
.rlca .b{white-space:normal;text-align:center}
.rlca.prog .x{min-width:44px;min-height:44px}
.rlca.spr .cons{margin-top:16px}.rlca.spr .cons a{text-decoration:underline;color:white}
.rlca.qb .out{overflow-wrap:anywhere}.rlca.qb td.rlca-who{display:table-cell;background:transparent;margin:0;border-radius:0}
.rlca.unlock img{object-fit:contain;background:white}
@media(max-width:560px){.rlca.qb td.rlca-who{display:block}.rlca.prog .in{padding-bottom:calc(10px + env(safe-area-inset-bottom))}}
@media(max-width:900px){body.rlc-guide-actions .rr .dock{display:none}}
@media print{.rlca.spr{display:block!important;background:white;color:black}.rlca.spr h3,.rlca.spr .l>p,.rlca.spr .cons,.rlca.spr li{color:black}.rlca.spr .r{background:white}.rlca.spr .cons,.rlca.spr .b,.rlca.unlock,.rlca.lad,.rlca-done{display:none!important}.rlca.spr li{border-color:#ccc}.rlca.qb{break-inside:auto}.rlca.qb tr{break-inside:avoid}}

/* RealtyListingCo readability pass v1 */
