/* ============================================================
   Carson's Corner — REO / Distressed CRE Pillar Pages
   Shared stylesheet — BRIGHT WHITE / BLACK / BLUE theme
   ============================================================ */

:root{
  --bg:#FFFFFF;
  --bg-2:#F5F7FB;         /* bright cool band */
  --card:#FFFFFF;
  --card-2:#F5F7FB;       /* bright cool card */
  --ink:#1A1A1A;          /* near-black body text */
  --cream:#111111;
  --muted:#55606E;        /* secondary text */
  --copper:#3D24C8;       /* accent = bright navy-purple blue */
  --copper-lt:#3D24C8;    /* same blue for links/lettering */
  --blue:#3D24C8;
  --blue-deep:#3D24C8;    /* primary button bg */
  --blue-lt:#2A14A8;      /* primary button hover (darker) */
  --line:#E4E8F0;         /* cool light border */
  --ok:#1F7A4D;
  --warn:#B5482E;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:#FFFFFF;
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Inter',Roboto,Helvetica,Arial,sans-serif;
  line-height:1.65;
  font-size:17px;
}

/* ── TOP BAR ── */
.reo-nav{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  gap:1rem;flex-wrap:wrap;
  padding:14px 6vw;
  background:rgba(255,255,255,0.92);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(61,36,200,0.18);
}
.reo-nav a{color:var(--ink);text-decoration:none}
.reo-logo{
  font-weight:800;letter-spacing:0.04em;font-size:1.05rem;
}
.reo-logo span{color:var(--copper)}
.reo-nav-links{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}
.reo-nav-links a{
  font-size:0.72rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--muted);transition:color .2s;
}
.reo-nav-links a:hover{color:var(--copper-lt)}
.reo-nav-cta{
  background:var(--blue-deep);color:#fff !important;
  padding:0.5rem 1.1rem;border-radius:4px;
  font-size:0.7rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;
  transition:background .2s;
}
.reo-nav-cta:hover{background:var(--blue-lt);color:#fff !important}

/* ── HERO ── */
header.hero{
  padding:64px 6vw 44px;
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(1200px 420px at 18% 0%,rgba(61,36,200,.07),transparent),
    radial-gradient(820px 320px at 82% 12%,rgba(61,36,200,.04),transparent);
}
.breadcrumb{font-size:0.78rem;color:var(--muted);margin-bottom:14px}
.breadcrumb a{color:var(--copper-lt);text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}
.kicker{
  color:var(--copper-lt);text-transform:uppercase;letter-spacing:.2em;
  font-weight:700;font-size:13px;
}
h1{
  font-size:clamp(30px,4.4vw,52px);line-height:1.12;
  margin:12px 0 16px;color:#111;letter-spacing:-.02em;
}
.lede{color:var(--muted);max-width:74ch;font-size:18px}
.hero-tags{margin-top:18px}
.tag{
  display:inline-block;background:#EEF1F8;border:1px solid var(--line);
  color:var(--muted);border-radius:999px;padding:4px 11px;
  font-size:12px;margin:3px 4px 0 0;
}
.hero-actions{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap}
.btn{
  display:inline-flex;align-items:center;gap:.5rem;
  font-size:0.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  text-decoration:none;padding:0.85rem 1.6rem;border-radius:4px;transition:all .2s;
}
.btn-primary{background:var(--blue-deep);color:#fff;border:1px solid var(--blue-deep)}
.btn-primary:hover{background:var(--blue-lt);color:#fff;border-color:var(--blue-lt);transform:translateY(-2px);text-decoration:none}
.btn-ghost{background:transparent;border:1px solid var(--copper);color:var(--copper-lt)}
.btn-ghost:hover{background:rgba(61,36,200,.08);transform:translateY(-2px);text-decoration:none}
.btn-dark{background:transparent;border:1px solid #111;color:#111}
.btn-dark:hover{background:#111;color:#fff;transform:translateY(-2px);text-decoration:none}

/* ── MAIN ── */
main{padding:20px 6vw 70px;max-width:1180px;margin:0 auto}

h2{
  font-size:clamp(23px,2.9vw,33px);margin:46px 0 14px;color:#111;
  letter-spacing:-.01em;border-left:4px solid var(--copper);padding-left:13px;
}
h3{font-size:clamp(19px,2.2vw,24px);margin:30px 0 10px;color:#111}
h4{font-size:18px;margin:18px 0 8px;color:var(--copper-lt)}
p,li{color:var(--ink)}
a{color:var(--copper-lt);text-decoration:none}
a:hover{text-decoration:underline}
strong{color:#111}

/* ── TOC ── */
nav.toc{
  background:var(--card-2);border:1px solid var(--line);border-radius:14px;
  padding:18px 22px;margin:26px 0 40px;columns:2;column-gap:28px;
}
nav.toc strong{display:block;margin-bottom:8px}
nav.toc a{display:block;padding:4px 0;color:var(--ink);font-size:15px;break-inside:avoid}
nav.toc a:hover{color:var(--copper-lt)}

section{margin:36px 0;padding-top:10px;border-top:1px dashed var(--line)}
section:first-of-type{border-top:0}

/* ── FAQ accordions ── */
details{
  background:var(--card-2);border:1px solid var(--line);border-radius:12px;
  padding:14px 18px;margin:10px 0;
}
details[open]{background:#EDEFFB;border-color:var(--copper)}
summary{
  cursor:pointer;font-weight:600;color:#111;font-size:17px;list-style:none;
  display:flex;gap:10px;align-items:flex-start;
}
summary::-webkit-details-marker{display:none}
summary::before{content:"Q";color:var(--copper-lt);font-weight:800;margin-right:6px;flex:0 0 auto}
.answer{margin-top:10px;padding-top:10px;border-top:1px solid var(--line);color:var(--muted)}
.answer::before{content:"A ";color:var(--ok);font-weight:800}

/* ── Cards / grid ── */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:16px 0}
.card{background:var(--card-2);border:1px solid var(--line);border-radius:12px;padding:18px}
.card h4{margin-top:6px}
.card p{color:var(--muted);font-size:15px}
.pill{
  display:inline-block;background:var(--copper);color:#fff;font-weight:800;
  padding:3px 10px;border-radius:999px;font-size:12px;margin-right:6px;
  text-transform:uppercase;letter-spacing:.08em;
}

/* ── Pillar link cards (hub + related) ── */
.guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin:20px 0}
a.guide-card{
  display:block;background:var(--card);border:1px solid var(--line);border-radius:14px;
  padding:22px;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;
}
a.guide-card:hover{
  transform:translateY(-4px);border-color:var(--copper);
  box-shadow:0 14px 30px rgba(61,36,200,.14);text-decoration:none;
}
.guide-card .gc-num{
  font-size:0.72rem;font-weight:700;letter-spacing:.18em;color:var(--copper-lt);
}
.guide-card h3{margin:8px 0 8px;font-size:1.18rem;color:#111}
.guide-card p{color:var(--muted);font-size:14.5px;margin:0}

/* ── Related block ── */
.related{
  margin-top:54px;padding:30px 6vw;background:var(--bg-2);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.related-inner{max-width:1180px;margin:0 auto}
.related h2{border-left:0;padding-left:0;margin-top:0}

/* ── Tables ── */
table{
  width:100%;border-collapse:collapse;margin:16px 0;background:var(--card);
  border:1px solid var(--line);border-radius:10px;overflow:hidden;
}
th,td{padding:10px 13px;text-align:left;border-bottom:1px solid var(--line);font-size:15px}
th{background:#EEF1F8;color:#111}
td{color:var(--muted)}

/* ── Callouts ── */
.callout{
  background:linear-gradient(180deg,rgba(61,36,200,.10),transparent);
  border:1px solid var(--copper);border-radius:12px;padding:16px 20px;margin:18px 0;
}
.warnbox{
  background:linear-gradient(180deg,rgba(181,72,46,.08),transparent);
  border:1px solid #E3C3B8;border-radius:12px;padding:16px 20px;margin:18px 0;
}
.cta-band{
  background:linear-gradient(120deg,rgba(61,36,200,.06),rgba(61,36,200,.14));
  border:1px solid var(--copper);border-radius:16px;padding:30px 28px;margin:30px 0;
}
.cta-band h3{margin-top:0;color:#111}
.cta-actions{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}

hr{border:0;border-top:1px dashed var(--line);margin:32px 0}

/* ── Footer ── */
footer{
  padding:42px 6vw;border-top:1px solid var(--line);
  color:var(--muted);font-size:14px;background:var(--card-2);
}
footer strong{color:#111}
footer a{color:var(--copper-lt)}
.footer-links{margin:14px 0;display:flex;gap:1.5rem;flex-wrap:wrap}
.footer-links a{font-size:13px;letter-spacing:.04em}

@media(max-width:780px){
  nav.toc{columns:1}
  .reo-nav{flex-wrap:wrap}.reo-nav-links{display:flex;width:100%;justify-content:center;gap:.75rem 1rem;margin-top:6px}.reo-nav-links a{font-size:.66rem;letter-spacing:.08em}
  header.hero{padding:48px 6vw 36px}
}
