/* Hand-authored additions layered on top of the generated refresh.css design
   system as we wire it into real pages. This file is NOT regenerated from
   the design upload — add to it as each phase needs something the mockup
   didn't show. Keep everything scoped under .bm2, same as refresh.css. */

/* Phase 2 — Home / results list.
   The mockup's ".ph" thumbnail box is an empty placeholder texture; the live
   site has real building photos, so fill the box with the photo instead. */
.bm2 .brow .ph{padding:0;overflow:hidden}
.bm2 .brow .ph img{width:100%;height:100%;object-fit:cover}


.bm2 .field.invalid input{border-color:var(--stop)}
.bm2 .field .error{color:var(--stop);font-size:12.5px;display:none}
.bm2 .field.invalid .error{display:block}
.bm2 .field.invalid .help{display:none}

/* Required-field asterisk next to the label, instead of spelling out
   "X is required." under every field. */
.bm2 .field label .req{color:var(--stop)}


body{background:#f4f6f9}

/* Contact page (VC-523). */
.bm2 .contact{display:flex;flex-direction:column;gap:40px;padding-bottom:56px}
.bm2 .contact .pagehead{padding:clamp(24px,5vw,48px) 0 0;display:flex;flex-direction:column;gap:12px}
.bm2 .contact .pagehead h1{margin:0;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:clamp(44px,7vw,64px);line-height:1}
.bm2 .contact .pagehead p{margin:0;font-size:19px;line-height:1.55;color:var(--body)}
.bm2 .contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.bm2 .contact-card{padding:28px;display:flex;flex-direction:column;gap:10px;border-radius:12px}
.bm2 .contact-card .num{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:20px;color:var(--blue)}
.bm2 .contact-card h2{margin:0;font-weight:600;font-size:22px;color:inherit}
.bm2 .contact-card p{margin:0;flex:1;font-size:16px;line-height:1.5;color:var(--body)}
.bm2 .contact-card a{font-weight:600;font-size:16px}
.bm2 .contact-card.dark{background:var(--ink);color:#fff}
.bm2 .contact-card.dark .num{color:#6fb0ff}
.bm2 .contact-card.dark a{font-size:18px;color:#fff}
.bm2 .contact-fee{display:flex;gap:20px;align-items:baseline;padding:20px 24px;border-radius:12px}
.bm2 .contact-fee .amt{flex:none;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:28px;color:var(--ink)}
.bm2 .contact-fee p{margin:0;font-size:16px;line-height:1.5;color:var(--body);text-wrap:pretty}
.bm2 .contact-fee strong{font-weight:600;color:var(--ink)}
.bm2 .contact-foot{border-top:1px solid var(--line);background:#fff;padding:24px 0;font-size:15px;color:var(--body)}
.bm2 .contact-foot .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px}
