/*
Theme Name: DoerLoans Local Theme
Description: Minimal theme inspired by LocalMortgage layout (hero, CTA, sections) for DoerLoans.com
Version: 1.0.0
Text Domain: doerloans-local
*/
:root {
  --dl-navy: #1f2b5c;
  --dl-accent: #e03616;
  --dl-light: #f8f9fb;
  --dl-muted: #6b7280;
  --dl-text: #1f2937;
}
body { margin:0; color: var(--dl-text); font-family: system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif; }
a { color: var(--dl-accent); text-decoration: none; }
a:hover { text-decoration: underline; }

.header { background:#fff; border-bottom:1px solid #e5e7eb; }
.header-inner { max-width:1200px; margin:0 auto; display:flex; gap:20px; align-items:center; padding:14px 16px; }
.brand a { color: var(--dl-navy); font-weight:700; font-size: 1.1rem; }
.nav ul { list-style:none; display:flex; gap:16px; margin:0; padding:0; flex-wrap:wrap; }
.nav a { color:#374151; }
.cta a { background: var(--dl-accent); color:#fff; padding:10px 14px; border-radius:999px; display:inline-block; }

.hero { position:relative; background: var(--dl-navy); color:#fff; }
.hero-inner { max-width:1200px; margin:0 auto; padding:56px 16px; display:grid; gap:16px; }
.hero h1 { margin:0 0 8px; font-size: clamp(24px, 4vw, 40px); }
.hero p.lead { color:#e5e7eb; font-size: clamp(16px, 2vw, 18px); }
.hero .actions { display:flex; gap:12px; flex-wrap:wrap; }
.btn { display:inline-block; padding:10px 14px; border-radius:12px; font-weight:600; }
.btn-primary { background: var(--dl-accent); color:#fff; }
.btn-ghost { background: transparent; color:#fff; border:1px solid rgba(255,255,255,.5); }

.main { max-width:1200px; margin:0 auto; padding:28px 16px; }
.section { margin:24px 0; background:#fff; border:1px solid #e5e7eb; border-radius:16px; padding:20px; }
.section h2 { margin-top:0; color: var(--dl-navy); }
.grid-3 { display:grid; gap:16px; grid-template-columns:1fr; }
@media (min-width: 900px) { .grid-3 { grid-template-columns: repeat(3,1fr); } }

.footer { background: var(--dl-light); border-top:1px solid #e5e7eb; }
.footer-inner { max-width:1200px; margin:0 auto; padding:28px 16px; color:#374151; font-size: 0.95rem; }
.footer .cols { display:grid; gap:16px; grid-template-columns: repeat(2,1fr); }
@media (min-width: 900px) { .footer .cols { grid-template-columns: repeat(4,1fr); } }
.footer a { color:#374151; }

/* White/dark logic for the phone CTA line */
p.small:has(a[href="tel:16027304545"]) { color:#2D3143 !important; }
p.small:has(a[href="tel:16027304545"]) a { color: inherit !important; }

/* Form shell spacing */
.dl-prequal { background:#fff; border:1px solid #e5e7eb; border-radius:16px; padding:16px; }
.dl-prequal .progress { height:8px; background:#f1f5f9; border-radius:8px; overflow:hidden; margin:6px 0 18px; }
.dl-prequal .bar { height:100%; background: var(--dl-accent); width:0%; transition: width .3s; }
.dl-prequal .step-title { font-weight:700; color: var(--dl-navy); }
.dl-prequal .actions { margin-top:12px; display:flex; gap:8px; }
.dl-prequal button { border:0; border-radius:10px; padding:10px 14px; cursor:pointer; }
.dl-prequal .next { background: var(--dl-accent); color:#fff; }
.dl-prequal .back { background:#e5e7eb; }
