
:root{
  --red:#b11226;
  --red-dark:#8f0e1f;
  --red-soft:#fbecef;
  --charcoal:#1b1d22;
  --ink:#242833;
  --muted:#6a717d;
  --line:#e7d7db;
  --surface:#ffffff;
  --surface-soft:#f7f7f9;
  --success:#1d6b44;
  --error:#a12a2a;
  --radius:18px;
  --shadow:0 14px 36px rgba(34, 19, 23, .10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Source Sans 3",sans-serif;
  color:var(--ink);
  background:var(--surface-soft);
  line-height:1.55;
}
a{color:inherit}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.top-strip{background:var(--charcoal);color:#fff;font-size:.92rem}
.top-strip-inner{display:flex;justify-content:space-between;gap:18px;padding:10px 0;flex-wrap:wrap}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid #ece7e8;backdrop-filter:blur(10px)}
.nav-wrap{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{text-decoration:none;display:flex;flex-direction:column}
.brand-main{font-family:"Montserrat",sans-serif;font-size:1.2rem;font-weight:800;letter-spacing:.03em;color:var(--charcoal)}
.brand-sub{font-size:.84rem;color:var(--muted);margin-top:4px}
.nav-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.nav-link{text-decoration:none;font-weight:700;color:var(--charcoal)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:linear-gradient(135deg,var(--red),var(--red-dark));
  color:#fff;text-decoration:none;border:0;border-radius:999px;
  padding:14px 22px;font-weight:800;letter-spacing:.01em;cursor:pointer;
  box-shadow:0 10px 24px rgba(177,18,38,.22);transition:.2s ease;
}
.btn:hover{transform:translateY(-1px);filter:brightness(1.03)}
.btn-small{padding:11px 18px}
.btn-ghost{background:transparent;border:1.5px solid rgba(255,255,255,.45);box-shadow:none}
.btn-outline{background:transparent;border:1.5px solid var(--red);color:var(--red);box-shadow:none;width:100%}
.btn-outline:hover{background:var(--red);color:#fff}
.btn-block{width:100%}
.hero{
  background:radial-gradient(circle at top left, rgba(255,255,255,.18), transparent 28%), linear-gradient(135deg,#9c1022 0%, #c81f34 42%, #7f0f1d 100%);
  color:#fff;padding:74px 0 58px;
}
.hero-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:42px;align-items:center}
.eyebrow{margin:0 0 14px;font-size:.8rem;font-weight:900;letter-spacing:.18em;color:var(--red);text-transform:uppercase}
.eyebrow-light{color:#ffd3da}
h1,h2{font-family:"Montserrat",sans-serif;line-height:1.07;margin:0}
h1{font-size:clamp(2.7rem,6vw,5.3rem);max-width:820px;font-weight:800}
h2{font-size:clamp(2rem,4vw,3rem);font-weight:800}
.hero-copy{font-size:1.18rem;max-width:720px;color:rgba(255,255,255,.92);margin:24px 0 26px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:28px}
.hero-features{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.hero-features>div{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:16px}
.hero-features strong{display:block;font-weight:800;margin-bottom:6px}
.hero-features span{display:block;color:rgba(255,255,255,.82);font-size:.95rem}
.hero-card{background:#fff;color:var(--ink);padding:30px;border-radius:24px;box-shadow:var(--shadow)}
.hero-card-label{display:inline-block;background:var(--red-soft);color:var(--red-dark);font-weight:800;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;padding:7px 10px;border-radius:999px;margin-bottom:14px}
.hero-card h2{font-size:1.85rem;color:var(--charcoal);margin-bottom:14px}
.zip-pills{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 18px}
.zip-pills span{background:#fff;border:1px solid #efced4;color:var(--red-dark);padding:10px 14px;border-radius:999px;font-weight:800}
.quick-points{padding-left:20px;margin:0 0 22px;color:var(--muted);line-height:1.9}
.hero-card-note{margin:14px 0 0;color:var(--muted);font-size:.92rem;text-align:center}
.stats-section{margin-top:-24px;position:relative;z-index:2}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.stat-card{background:#fff;border-radius:20px;padding:22px 24px;box-shadow:var(--shadow);border-top:4px solid var(--red)}
.stat-card strong{display:block;font-family:"Montserrat",sans-serif;font-size:1.18rem;margin-bottom:4px;color:var(--charcoal)}
.stat-card span{display:block;color:var(--muted)}
.section{padding:74px 0}
.section-light{background:var(--surface-soft)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}
.section-intro{max-width:620px;color:var(--muted);margin:.55rem 0 0}
.filters{display:flex;gap:8px;flex-wrap:wrap}
.filter{padding:10px 14px;border:1px solid #e3d0d5;background:#fff;border-radius:999px;cursor:pointer;font-weight:800;color:var(--charcoal)}
.filter.active{background:var(--red);color:#fff;border-color:var(--red)}
.listing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.listing-card{border:1px solid #efdfe2;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 8px 18px rgba(33,19,22,.04);transition:.2s ease}
.listing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.placeholder-photo{height:220px;background:linear-gradient(135deg,#f7dfe4,#fef6f7);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8a4d57}
.placeholder-photo span{font-family:"Montserrat",sans-serif;font-size:1.25rem;font-weight:800}
.placeholder-photo small{margin-top:6px}
.listing-body{padding:20px}
.listing-meta{display:flex;justify-content:space-between;gap:10px;font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.listing-body h3{font-family:"Montserrat",sans-serif;font-size:1.72rem;margin:12px 0 4px;color:var(--charcoal)}
.address{font-weight:800;margin:0 0 8px}
.facts{color:var(--muted);margin:0 0 17px}
.listing-note{font-size:.82rem;color:var(--muted);margin-top:24px}
.lead-section{background:#fff}
.lead-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:34px;align-items:start}
.lead-copy{background:linear-gradient(145deg,var(--charcoal),#2a2d35);color:#fff;padding:34px;border-radius:26px;box-shadow:var(--shadow)}
.lead-copy h2{margin-bottom:16px}
.checklist{padding-left:20px;line-height:2;margin:18px 0 24px}
.contact-box{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:18px;border-radius:18px}
.contact-box strong{display:block;margin-bottom:8px}
.contact-box p{margin:0}
.contact-box a{text-decoration:none;color:#fff}
.lead-form{background:#fff;color:var(--ink);padding:30px;border-radius:26px;border:1px solid #efe2e5;box-shadow:var(--shadow)}
.lead-form label{display:block;font-weight:800;font-size:.92rem;margin-bottom:14px}
input,select,textarea{width:100%;margin-top:6px;padding:13px 14px;border:1px solid #d8cfd2;border-radius:14px;font:inherit;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 3px rgba(177,18,38,.12)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
fieldset{border:0;padding:0;margin:0 0 12px}
legend{font-weight:800;font-size:.92rem;margin-bottom:8px}
.checks{display:flex;gap:20px;flex-wrap:wrap}
.checks label,.consent{display:flex!important;align-items:flex-start;gap:8px}
.checks input,.consent input{width:auto;margin-top:4px}
.form-submit{width:100%;font-size:1rem;margin-top:6px}
.form-status{font-weight:700;min-height:22px;margin-top:12px}
.form-status.success{color:var(--success)}
.form-status.error{color:var(--error)}
.fine-print{font-size:.78rem;color:var(--muted);margin-bottom:0}
.agent-section{background:var(--surface-soft)}
.agent-card{display:grid;grid-template-columns:190px 1fr;gap:28px;align-items:center;background:#fff;border:1px solid #efe1e4;padding:28px;border-radius:26px;box-shadow:var(--shadow)}
.agent-photo{aspect-ratio:1;border-radius:20px;background:linear-gradient(135deg,#f4d9de,#fff7f8);display:grid;place-items:center;color:#995663;font-weight:800;border:1px dashed #ddb8c0;overflow:hidden}
.agent-photo img{width:100%;height:100%;object-fit:cover;display:block;border-radius:20px}
.agent-title{font-weight:800;color:var(--red-dark);margin:.2rem 0 .5rem}
.agent-copy{color:var(--muted);max-width:760px}
.agent-links{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:18px}
.agent-email{font-weight:700;color:var(--red)}
footer{padding:28px 0;background:var(--charcoal);color:#d9dbe1;font-size:.83rem}
.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.honeypot{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}
.form-submit:disabled{opacity:.7;cursor:wait}
@media (max-width: 980px){
  .hero-grid,.lead-grid{grid-template-columns:1fr}
  .hero-features,.stats-grid{grid-template-columns:1fr}
  .listing-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 680px){
  .container{width:min(100% - 28px,1180px)}
  .nav-wrap,.top-strip-inner,.footer-inner{flex-direction:column;align-items:flex-start}
  .nav-actions{width:100%}
  .hero{padding-top:54px}
  .listing-grid,.field-row,.agent-card{grid-template-columns:1fr}
  .section-heading{align-items:flex-start;flex-direction:column}
  .placeholder-photo{height:190px}
}
