.lhero{max-width:1240px;margin:0 auto;padding:var(--space-10) var(--space-6) var(--space-8);display:grid;grid-template-columns:1fr 1.1fr;gap:var(--space-10);align-items:end}
.lhero h1{font-family:var(--font-display);font-weight:500;font-size:var(--text-xl);letter-spacing:-.015em;max-width:18ch}
.lhero .lede{margin-bottom:0}
.path{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);counter-reset:p}
.path li{counter-increment:p;background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);position:relative}
.path li::before{content:counter(p);width:28px;height:28px;border-radius:50%;background:var(--primary);color:#fff;font-weight:700;font-size:var(--text-xs);display:grid;place-items:center}
.path li:nth-child(2)::before{background:var(--accent)}
.path li:nth-child(3)::before{background:var(--text)}
.path b{font-size:var(--text-sm)}
.path span{font-size:var(--text-xs);color:var(--muted)}

.ldir{max-width:1240px;margin:0 auto;padding:0 var(--space-6) var(--space-12)}
.lbar{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;padding:var(--space-4);background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg)}
.lsearch{flex:1;min-width:200px;display:flex;align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--muted)}
.lsearch:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}
.lsearch input{flex:1;min-width:0;border:0;background:none;outline:none;font-size:var(--text-sm);color:var(--text)}
.seg--auto{display:inline-grid;grid-template-columns:repeat(4,auto)}
.seg--auto button{padding:var(--space-2) var(--space-3);white-space:nowrap}
.lchips{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin:var(--space-4) 0 var(--space-3)}
.lchips__label{font-size:var(--text-xs);font-weight:700;color:var(--muted);margin-right:var(--space-1)}
.lchips button{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:500}
.lchips button:hover{border-color:var(--text)}
.lchips button[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:#fff}
.localtog{display:inline-flex;gap:var(--space-2);align-items:center;font-size:var(--text-sm);cursor:pointer}
.ldir .count{margin:var(--space-5) 0 var(--space-4)}

.lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:var(--space-4)}
.lgroup{grid-column:1/-1;font-family:var(--font-display);font-weight:500;font-size:var(--text-lg);margin-top:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--divider)}
.lgroup:first-child{margin-top:0}
.lcard{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);transition:box-shadow .2s var(--ease),border-color .2s}
.lcard:hover{box-shadow:var(--shadow-lg);border-color:var(--border)}
.lcard__top{display:flex;gap:var(--space-3);align-items:flex-start}
.mono{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:var(--text-base);flex-shrink:0;background:var(--primary-soft);color:var(--primary)}
.mono--cu{background:var(--accent-soft);color:#8a3f17}
.mono--bank{background:#e7e5df;color:var(--text)}
.lcard h3{font-size:var(--text-base);line-height:1.25}
.tags{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-1)}
.tag{font-size:.75rem;font-weight:700;padding:1px var(--space-2);border-radius:5px;background:var(--surface-2);color:var(--muted)}
.tag--local{background:var(--primary);color:#fff}
.lcard p{margin:0;font-size:var(--text-sm)}
.lcard .blurb{color:var(--muted)}
.pre{display:flex;gap:var(--space-2);padding:var(--space-3);background:var(--bg);border-radius:var(--radius);font-size:var(--text-sm)}
.pre svg{flex-shrink:0;color:var(--primary);margin-top:3px}
.loans{display:flex;flex-wrap:wrap;gap:var(--space-1)}
.loans span{font-size:.75rem;border:1px solid var(--border);border-radius:999px;padding:1px var(--space-2)}
.loans span.hit{border-color:var(--primary);color:var(--primary);background:var(--primary-soft);font-weight:700}
.elig{font-size:var(--text-xs)!important;color:#8a3f17}
.lmeta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);font-size:var(--text-xs);color:var(--muted);margin-top:auto;padding-top:var(--space-3);border-top:1px dashed var(--divider)}
.lmeta a{color:var(--muted)}
.lmeta a:hover{color:var(--text)}
.lcard .btn{align-self:stretch;text-decoration:none}
.disclose{margin-top:var(--space-10);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface-2);font-size:var(--text-sm);max-width:80ch}
.disclose p{margin:var(--space-2) 0 0;color:var(--muted)}
.disclose a{color:var(--primary)}

@media (max-width:1000px){.lhero{grid-template-columns:1fr;gap:var(--space-6);align-items:start}}
@media (max-width:700px){
  .lhero,.ldir{padding-inline:var(--space-4)}
  .path{grid-template-columns:1fr}
  .lbar{padding:var(--space-3)}
  .lsearch{flex-basis:100%}
  .seg--auto{grid-template-columns:repeat(4,auto);width:100%;overflow-x:auto}
  .seg--auto button{padding:var(--space-2);font-size:var(--text-xs)}
  .lbar .sort{flex-basis:100%}
  .lbar .sort select{width:100%}
}

/* Sponsored one-click cards (shared with builders page) */
.adcard{position:relative;cursor:pointer}
.adcard .stretch::after{content:"";position:absolute;inset:0;border-radius:var(--radius-lg)}
.adcard .stretch:focus-visible{outline:none}
.adcard:has(.stretch:focus-visible){outline:2px solid var(--primary);outline-offset:2px}
.adcard:hover .stretch{background:var(--primary-hover)}
.adlabel{position:absolute;top:var(--space-3);right:var(--space-3);font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.adcard .lcard__top{padding-right:var(--space-16,64px)}
.lmeta__host{font-weight:500}

/* Advertise CTA + form */
.advert{margin-top:var(--space-10);display:grid;grid-template-columns:1fr 1.1fr;gap:var(--space-8);padding:var(--space-8);border-radius:var(--radius-lg);background:var(--text);color:#f5f2ec}
.advert h2{font-family:var(--font-display);font-weight:500;font-size:var(--text-lg);line-height:1.2;max-width:20ch}
.advert .eyebrow{color:#e9a27c}
.advert > div > p{color:#cfc9bd;font-size:var(--text-sm);max-width:52ch}
.advert ul{margin:var(--space-4) 0 0;padding:0;list-style:none;display:grid;gap:var(--space-2);font-size:var(--text-sm)}
.advert li{display:flex;gap:var(--space-2)}
.advert li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);margin-top:.55em;flex-shrink:0}
.advform{background:var(--surface);color:var(--text);border-radius:var(--radius-lg);padding:var(--space-5);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}
.advform .field{display:flex;flex-direction:column;gap:var(--space-1)}
.advform .span2{grid-column:1/-1}
.advform label{font-size:var(--text-xs);font-weight:700}
.advform input,.advform select{height:40px;border:1px solid var(--border);border-radius:var(--radius);padding:0 var(--space-3);background:var(--bg);font-size:var(--text-sm);color:var(--text);width:100%}
.advform input:focus,.advform select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}
.advform small{font-size:var(--text-xs);color:var(--muted)}
.advdone{background:var(--surface);color:var(--text);border-radius:var(--radius-lg);padding:var(--space-6)}
.advdone p{color:var(--muted);font-size:var(--text-sm);margin:var(--space-2) 0 0}
@media (max-width:900px){.advert{grid-template-columns:1fr;padding:var(--space-5)}}
@media (max-width:520px){.advform{grid-template-columns:1fr}}
.samplenote{display:inline-block;margin-top:var(--space-4);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md,8px);background:#f3e3d6;color:#6b3418;font-size:var(--text-sm)}

/* Home services sub-navigation (lenders, title, warranty, insurance) */
.svcnav{max-width:1240px;margin:var(--space-4) auto 0;padding:0 var(--space-6);display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none}
.svcnav::-webkit-scrollbar{display:none}
.svcnav a{flex-shrink:0;text-decoration:none;color:var(--muted);font-size:var(--text-sm);font-weight:500;padding:var(--space-2) var(--space-4);border:1px solid var(--divider);border-radius:999px;background:var(--surface);white-space:nowrap}
.svcnav a:hover{color:var(--text);border-color:var(--border)}
.svcnav a[aria-current=page]{background:var(--primary);border-color:var(--primary);color:#fff}
#chips button .opt{opacity:.7;font-weight:400}
@media (max-width:700px){.svcnav{padding-inline:var(--space-4)}.svcnav a{padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}}
.adcard .lcard__top{padding-right:104px}
#chips button[aria-pressed=true] .opt{color:#fff;opacity:.85}
@media (max-width:700px){.svcnav{flex-wrap:wrap;overflow:visible}}
.advlink{color:var(--primary);font-weight:500;text-underline-offset:3px;white-space:nowrap}
