/* Homeowner and contractor landing pages (modernization Phase 8, 2026-10-11).
   Built only on the shared theme tokens in groundbid-theme.css, so the
   Design Manager's global and "landing" page settings apply here too. */
.lp{font-family:var(--gb-font);color:var(--gb-text);background:var(--gb-bg);margin:0;line-height:1.55;}
.lp *{box-sizing:border-box;}
.lp a{color:var(--gb-primary);}
.lp-wrap{max-width:1080px;margin:0 auto;padding:0 20px;}
.lp-header{background:var(--gb-header-bg);color:var(--gb-header-text);}
.lp-header .lp-wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px;}
.lp-header nav{display:flex;align-items:center;gap:6px 16px;flex-wrap:wrap;}
.lp-header nav a{color:var(--gb-header-text);text-decoration:none;font-size:14px;font-weight:500;padding:10px 2px;}
.lp-hero{background:var(--gb-header-bg);color:#fff;padding:48px 0 56px;}
.lp-kicker{display:inline-block;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#A7F3D0;margin-bottom:10px;}
.lp-hero h1{font-size:clamp(30px,6vw,52px);line-height:1.1;margin:0 0 14px;letter-spacing:-.02em;max-width:780px;}
.lp-hero p{font-size:clamp(16px,2.4vw,19px);color:#CBD5E1;max-width:680px;margin:0 0 24px;}
.lp-ctas{display:flex;flex-wrap:wrap;gap:10px;}
.lp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:var(--gb-radius-button);font-weight:600;font-size:16px;text-decoration:none;}
.lp-btn-primary{background:var(--gb-primary);color:var(--gb-on-primary) !important;}
.lp-btn-primary:hover{background:var(--gb-primary-hover);}
.lp-btn-ghost{border:1px solid rgba(255,255,255,.45);color:#fff !important;}
.lp-fee{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px;padding:0;list-style:none;}
.lp-fee li{background:rgba(16,185,129,.16);border:1px solid rgba(167,243,208,.5);color:#D1FAE5;border-radius:999px;padding:7px 14px;font-weight:600;font-size:14px;}
.lp-section{padding:48px 0;}
.lp-section.alt{background:var(--gb-bg-alt);}
.lp-section h2{font-size:clamp(24px,4vw,32px);margin:0 0 8px;letter-spacing:-.01em;}
.lp-section .lp-lead{color:var(--gb-slate);max-width:700px;margin:0 0 24px;}
.lp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;}
.lp-card{background:var(--gb-surface);border:1px solid var(--gb-border);border-radius:var(--gb-radius);padding:20px;box-shadow:var(--gb-shadow);}
.lp-card h3{margin:0 0 6px;font-size:18px;}
.lp-card p{margin:0;color:var(--gb-slate);font-size:15px;}
.lp-icon{font-size:24px;line-height:1;margin-bottom:10px;display:block;}
.lp-steps{counter-reset:step;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px;}
.lp-steps li{position:relative;background:var(--gb-surface);border:1px solid var(--gb-border);border-radius:var(--gb-radius);padding:20px 20px 20px 64px;}
.lp-steps li::before{counter-increment:step;content:counter(step);position:absolute;left:18px;top:18px;width:32px;height:32px;border-radius:50%;background:var(--gb-primary);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;}
.lp-steps strong{display:block;margin-bottom:4px;}
.lp-steps span{color:var(--gb-slate);font-size:15px;}
.lp-checklist{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:8px;}
.lp-checklist li{padding-left:30px;position:relative;}
.lp-checklist li::before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;border-radius:50%;background:var(--gb-success-soft);color:var(--gb-success-ink);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:13px;}
.lp-note{font-size:13.5px;color:var(--gb-slate);}
.lp-band{background:var(--gb-header-bg);color:#fff;border-radius:var(--gb-radius);padding:28px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;}
.lp-band h2{margin:0;font-size:clamp(22px,3.6vw,28px);}
.lp-footer{background:var(--gb-footer-bg);color:var(--gb-footer-text);padding:28px 0;font-size:14px;}
.lp-footer .lp-wrap{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;justify-content:space-between;}
.lp-footer a{color:var(--gb-footer-text);}
@media (max-width:560px){
  .lp-hero{padding:32px 0 40px;}
  .lp-ctas .lp-btn{flex:1 1 100%;}
  .lp-section{padding:36px 0;}
  .lp-band{padding:22px;}
  .lp-band .lp-btn{width:100%;}
}
/* Phone touch targets (same rules as groundbid-design.css section 6). */
@media (max-width:640px){
  .lp-header nav a{min-height:44px;display:inline-flex;align-items:center;}
  .lp-header select,.lang-switcher-mount select{min-height:40px;}
  .lp-footer a{display:inline-block;padding:12px 2px;}
}
