/* Pages written by the crawl-pages edge function (netlify/edge-functions/crawl-pages):
   /homes/*, /communities/*, /floor-plans/*, /faq, /about. Loaded after style.css, home.css
   and pages.css, whose tokens (--ink, --gold, --sand…) and .btn/.st/.pkg classes it uses. */

.cp{max-width:1080px;padding-top:2.6rem}
.cp-hero{padding-bottom:3.6rem}
.cp-hero h1{font-size:clamp(2rem,4.6vw,3.2rem);letter-spacing:.06em}
.cp h2{font-size:clamp(1.35rem,2.4vw,1.8rem);letter-spacing:.06em;margin:0 0 .9rem;color:var(--burgundy-deep)}
.cp h3{font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:var(--gold-deep);margin:0 0 .5rem}
.cp section{margin:0 0 3rem}
.cp p{margin:0 0 1rem}
.cp a{color:var(--burgundy-deep);text-decoration:underline;text-decoration-color:rgba(192,160,98,.6);text-underline-offset:3px}
.cp a:hover{text-decoration-color:var(--gold-deep)}
.cp .btn{text-decoration:none;margin:0 .5rem .6rem 0}
.cp .btn-burgundy{color:var(--cream)}
.cp .btn-gold{color:var(--burgundy-deep)}

.cp-crumbs{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:#7a7068;margin:0 0 1.8rem}
.cp-crumbs a{color:inherit;text-decoration:none}
.cp-crumbs a:hover{color:var(--burgundy-deep)}
.cp-lead{font-size:1.12rem;line-height:1.75;max-width:52rem;color:var(--ink)}
.cp-muted,.cp-fine{color:#7a7068}
.cp-fine{font-size:.78rem;line-height:1.6;max-width:58rem}
.cp-note{font-style:italic;color:#5c544b}
.cp-actions{margin:1.4rem 0 0}

.cp-split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:2.4rem;align-items:start;margin:0 0 3rem}
.cp-split>section{margin:0}

.cp-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;border-top:1px solid rgba(46,42,37,.12)}
.cp-facts>div{padding:.75rem .2rem;border-bottom:1px solid rgba(46,42,37,.12)}
.cp-facts dt{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:#7a7068;margin:0}
.cp-facts dd{margin:.15rem 0 0;font-weight:400;font-size:1rem}

.cp-box{background:var(--cream);border:1px solid rgba(192,160,98,.45);padding:1.6rem 1.7rem}
.cp-box ul{margin:0 0 1rem;padding-left:1.1rem}
.cp-box li{margin:.35rem 0}

.cp-feat{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.6rem 2rem;margin-top:1.2rem}
.cp-feat ul{margin:0;padding-left:1.05rem;font-size:.92rem;line-height:1.6}
.cp-feat li{margin:.2rem 0}

.cp-scroll{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 1.6rem}
.cp-table{width:100%;border-collapse:collapse;font-size:.88rem;background:var(--cream)}
.cp-table caption{text-align:left;font-family:var(--sans);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep);padding:0 0 .6rem;font-weight:500}
.cp-table th,.cp-table td{padding:.65rem .8rem;text-align:left;border-bottom:1px solid rgba(46,42,37,.1);white-space:nowrap}
.cp-table thead th{font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--cream);background:var(--burgundy-deep)}
.cp-table td:first-child{white-space:normal;min-width:12rem}
.cp-table .st{margin-left:.4rem;font-size:.6rem;padding:.18rem .5rem}
.cp-ftable td:not(:first-child),.cp-ftable thead th:not(:first-child){text-align:center}
.cp-ftable td{white-space:normal}
.cp-group th{background:var(--sand);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--burgundy)}
.cp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.cp-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}
.cp-cards a{display:block;padding:1.1rem 1.2rem;background:var(--cream);border:1px solid rgba(46,42,37,.1);text-decoration:none;transition:border-color .2s}
.cp-cards a:hover{border-color:var(--gold)}
.cp-cards b{display:block;font-family:var(--serif);font-size:1.4rem;font-weight:400;letter-spacing:.04em}
.cp-cards span{font-size:.82rem;color:#7a7068}

.cp-faq section{border-top:1px solid rgba(46,42,37,.12);padding-top:1.6rem;margin-bottom:1.8rem}
.cp-faq h2{font-size:clamp(1.2rem,2vw,1.5rem);text-transform:none;letter-spacing:.02em;font-weight:400}
.cp-faq p{max-width:50rem}

.cp-stats{list-style:none;padding:0;margin:2rem 0 3rem;display:flex;flex-wrap:wrap;gap:2.4rem}
.cp-stats b{display:block;font-family:var(--serif);font-weight:300;font-size:3rem;line-height:1;color:var(--gold-deep)}
.cp-stats span{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:#7a7068}
.cp-steps{padding-left:1.2rem;max-width:50rem}
.cp-steps li{margin:.5rem 0}
.cp-quote{margin:0 0 1.4rem;padding:1.2rem 1.5rem;border-left:3px solid var(--gold);background:var(--cream);max-width:52rem}
.cp-quote p{font-family:var(--serif);font-size:1.2rem;font-style:italic;line-height:1.55;margin:0 0 .5rem}
.cp-quote .cp-cite{margin:0;font-family:var(--sans);font-style:normal;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#7a7068}

.cp-contact{background:var(--burgundy-deep);color:var(--cream);padding:2.2rem 2rem;margin-top:3.4rem}
.cp-contact h2{color:var(--cream)}
.cp-contact a{color:var(--gold-bright)}
.cp-contact .btn-ghost-dark{color:var(--cream);border-color:rgba(250,247,241,.5)}
.cp-people{list-style:none;padding:0;margin:1rem 0 0;display:flex;flex-wrap:wrap;gap:1rem 2.4rem}
.cp-people li{display:flex;flex-direction:column}
.cp-k{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--sand-deep)}
.cp-people a{font-size:1.1rem;text-decoration:none}

@media (max-width:820px){
  .cp-split{grid-template-columns:1fr}
  .cp-facts{grid-template-columns:1fr}
  .cp{padding-left:16px;padding-right:16px}
}
