/* LocalePulse shared theme (from /ai-agents, 13 Oct 2026).
   Tokens + components (.lp-*) + a retheme layer for legacy pages (body.lp).
   Load AFTER styles.css / guide.css. Not used by /pest-control/fix-pack (yet). */
:root{
 --lp-cream:#F7F5EC;--lp-paper:#FFFFFF;--lp-ink:#171717;--lp-soft:#3A403C;--lp-muted:#667065;
 --lp-line:#E2E4D8;--lp-green:#0F3D2E;--lp-bright:#39E56A;--lp-bright-h:#2BCF58;--lp-mid:#1DB954;--lp-tint:#EAF7EE;
 --lp-sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
 --lp-hand:"Caveat","Segoe Print","Bradley Hand",cursive;
 --lp-r:12px;--lp-shadow:0 10px 30px rgba(15,61,46,.08);
}
/* ---------- Components ---------- */
.lp-wrap{width:min(100% - 2rem,1120px);margin-inline:auto}
.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--lp-bright);color:var(--lp-green);font:inherit;font-weight:800;border:0;border-radius:8px;padding:.95rem 1.5rem;text-decoration:none;cursor:pointer}
.lp-btn:hover{background:var(--lp-bright-h)}
.lp-hand{font-family:var(--lp-hand);font-weight:600;color:var(--lp-green);line-height:1.1;font-size:1.7rem}
.lp-pill{display:inline-block;background:#E4F6E8;color:var(--lp-green);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.35rem .75rem}
.lp-header .lp-wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0}
.lp-hero{position:relative;padding:3rem 0 2rem;background:var(--lp-cream)}
.lp-hero h1 em{font-style:normal;color:var(--lp-mid)}
.lp-cards{display:grid;gap:.8rem}
.lp-card{background:var(--lp-paper);border:1px solid var(--lp-line);border-radius:var(--lp-r);padding:1.1rem 1.2rem;box-shadow:var(--lp-shadow)}
.lp-ico{width:46px;height:46px;border-radius:10px;background:var(--lp-green);display:flex;align-items:center;justify-content:center}
.lp-steps{list-style:none;margin:0;padding:0;display:grid;gap:1rem;counter-reset:s}
.lp-steps>li{counter-increment:s;background:var(--lp-paper);border:1px solid var(--lp-line);border-radius:var(--lp-r);padding:1.1rem 1.2rem 1.1rem 3.6rem;position:relative}
.lp-steps>li:before{content:counter(s);position:absolute;left:1rem;top:1rem;width:2rem;height:2rem;border-radius:50%;background:var(--lp-bright);color:var(--lp-green);font-weight:800;display:flex;align-items:center;justify-content:center}
.lp-formcard{background:var(--lp-paper);border:2px solid var(--lp-green);border-radius:14px;padding:1.5rem}
.lp-faq{display:grid;gap:.8rem}
.lp-faq>div,.lp-faq details{background:var(--lp-paper);border:1px solid var(--lp-line);border-radius:var(--lp-r);padding:1rem 1.2rem}
.lp-footer{background:var(--lp-green);color:#DDE7E0;padding:2rem 0}
.lp-footer a{color:#fff}
@media(min-width:760px){.lp-cards{grid-template-columns:repeat(3,1fr)}.lp-steps{grid-template-columns:repeat(3,1fr)}}

/* ---------- Retheme layer for existing pages ---------- */
body.lp{--font:var(--lp-sans);--display:var(--lp-sans);--bg:var(--lp-cream);--bg-warm:#EFECE0;--paper:#fff;--line:var(--lp-line);--accent:var(--lp-bright);--accent-hover:var(--lp-bright-h);--accent-h:var(--lp-bright-h);--accent-text:var(--lp-green);--deep:var(--lp-green);--tint:var(--lp-tint);
 background:var(--lp-cream)!important;color:var(--lp-ink);font-family:var(--lp-sans)!important;font-feature-settings:normal}
body.lp h1,body.lp h2,body.lp h3,body.lp h4,body.lp .brand,body.lp th{font-family:var(--lp-sans)!important;color:var(--lp-ink);letter-spacing:-.02em}
body.lp h1{font-weight:800;line-height:1.08}
body.lp h2{font-weight:800}
body.lp h3{font-weight:700}
body.lp section,body.lp .band-warm,body.lp main{background-color:transparent}
body.lp .band-warm{background:#EFECE0}
/* header */
body.lp .site-header{background:rgba(247,245,236,.96)!important;border-bottom:1px solid var(--lp-line);backdrop-filter:none}
body.lp .brand{font-weight:800;color:var(--lp-ink);text-decoration:none}
body.lp .brand span{color:var(--lp-green);font-weight:600}
body.lp .nav a{color:var(--lp-soft);font-weight:600}
body.lp .nav .nav-cta,body.lp .nav-cta{background:var(--lp-bright)!important;color:var(--lp-green)!important;font-weight:800;border-radius:8px}
/* buttons */
body.lp .btn{font-family:var(--lp-sans);font-weight:800;border-radius:8px}
body.lp .btn-primary{background:var(--lp-bright)!important;color:var(--lp-green)!important;border-color:var(--lp-bright)!important;box-shadow:0 2px 0 rgba(15,61,46,.15)}
body.lp .btn-primary:hover{background:var(--lp-bright-h)!important}
body.lp .btn-secondary{background:#fff!important;color:var(--lp-green)!important;border:2px solid var(--lp-green)!important}
body.lp .btn-ghost-dark{color:#fff!important;border-color:#fff!important}
/* labels / pills */
body.lp .tag,body.lp .section-label,body.lp .kicker{color:var(--lp-mid)!important;font-weight:800;letter-spacing:.08em}
body.lp .tag{background:#E4F6E8;border-radius:999px;padding:.3rem .75rem;color:var(--lp-green)!important}
body.lp .tag-dot{background:var(--lp-bright)}
/* cards & blocks */
body.lp .card,body.lp .teaser-card,body.lp .copy-block,body.lp .tpl,body.lp .answer,body.lp .signal-card,body.lp .optional-callout,body.lp .report-layer,body.lp .faq details,body.lp .faq>div,body.lp .related,body.lp .tbl-wrap,body.lp .steps li,body.lp .lp-capture{background:#fff;border:1px solid var(--lp-line)!important;border-radius:var(--lp-r)!important;box-shadow:var(--lp-shadow)}
body.lp .answer{border-left:4px solid var(--lp-bright)!important}
body.lp .note,body.lp .note-private,body.lp .disclaimer{border-radius:var(--lp-r)}
body.lp .note{background:var(--lp-tint);border:1px solid #CFE6D3}
body.lp .steps li::before{background:var(--lp-bright)!important;border:0!important;border-radius:50%!important;color:var(--lp-green)!important;font-weight:800}
body.lp .signal-icon{background:var(--lp-green)!important;color:var(--lp-bright)!important;border-radius:10px}
body.lp pre{background:#FBFAF4!important;border-color:var(--lp-line)!important}
/* forms */
body.lp form input,body.lp form select,body.lp form textarea{font-family:var(--lp-sans);font-size:16px;border:1px solid #CBD0C4;border-radius:8px;background:#fff}
body.lp form input:focus,body.lp form select:focus,body.lp form textarea:focus{outline:2px solid var(--lp-bright);outline-offset:1px}
body.lp form:not(.lp-plain),body.lp .lp-capture{border-radius:14px}
/* cta band */
body.lp .cta-band{background:var(--lp-green)!important;color:#fff;border-radius:14px}
body.lp .cta-band h2,body.lp .cta-band h3,body.lp .cta-band p{color:#fff!important}
/* footer */
body.lp .site-footer{background:var(--lp-green)!important;color:#DDE7E0!important;border-top:0!important;padding:2rem 0!important;margin-top:3rem}
body.lp .site-footer *{color:#DDE7E0}
body.lp .site-footer a{color:#fff!important}
body.lp a{color:var(--lp-green)}
body.lp .site-footer .brand{color:#fff!important}

/* ===== v2 components (13 Oct 2026, 10am): header, footer, photo hero, band ===== */
body.lp .site-header{display:none!important}   /* legacy header replaced by .lp-nav */
body.lp .site-footer{display:none!important}   /* legacy footer replaced by .lp-foot */
.lp-nav{position:sticky;top:0;z-index:30;background:rgba(247,245,236,.97);border-bottom:1px solid var(--lp-line)}
.lp-nav .lp-wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 0}
.lp-logo{font-weight:800;font-size:1.2rem;text-decoration:none;color:var(--lp-ink)!important;display:flex;flex-direction:column;line-height:1.15}
.lp-logo b{display:flex;align-items:center;gap:.25rem}
.lp-logo small{font-size:.74rem;font-weight:600;color:var(--lp-green)}
.lp-links{display:none;gap:1.3rem;align-items:center;font-weight:600;font-size:.93rem}
.lp-links a{text-decoration:none;color:var(--lp-soft)!important}
.lp-links a:hover{color:var(--lp-ink)!important}
.lp-nav .lp-btn{padding:.6rem 1rem;font-size:.9rem;white-space:nowrap}
body.lp a.lp-btn,a.lp-btn{color:var(--lp-green)!important}
.lp-foot{background:var(--lp-green);color:#DDE7E0;padding:2.2rem 0;margin-top:0;font-size:.93rem}
.lp-foot .lp-wrap{display:grid;gap:1rem}
.lp-foot p{margin:0;color:#DDE7E0!important}
.lp-foot a{color:#fff!important}
.lp-foot .lp-logo{color:#fff!important}
.lp-foot .lp-logo small{color:var(--lp-bright)}
/* compact green band for guides */
.lp-band{background:var(--lp-green);color:#fff;padding:2.25rem 0 2rem;position:relative;overflow:hidden}
.lp-band:after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(57,229,106,.28),rgba(57,229,106,0) 70%)}
.lp-band .lp-wrap{position:relative;z-index:1}
.lp-band .lp-kick{display:inline-block;background:rgba(57,229,106,.18);color:var(--lp-bright);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.3rem .7rem;margin:0 0 .8rem}
body.lp .lp-band h1{color:#fff!important;font-size:clamp(1.8rem,5vw,2.7rem);line-height:1.1;margin:0;max-width:24ch;font-weight:800}
body.lp .lp-band h1 em{font-style:normal;color:var(--lp-bright)}
/* photo hero */
.lp-phero{position:relative;background:var(--lp-cream);overflow:hidden}
.lp-phero-img{height:260px;background-color:var(--lp-green);background-size:cover;background-position:72% center}
.lp-phero .lp-wrap{position:relative;z-index:2;padding:1.75rem 0 2rem}
body.lp .lp-phero h1{font-size:clamp(2rem,7.5vw,3.3rem);line-height:1.06;font-weight:800;margin:.9rem 0 .8rem;max-width:17ch}
body.lp .lp-phero h1 em{font-style:normal;color:var(--lp-mid)}
.lp-phero .lp-lede{font-size:1.08rem;color:var(--lp-soft);max-width:44ch;margin:0 0 1.2rem}
.lp-ticks{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;padding:0;margin:1rem 0 0;font-size:.9rem;font-weight:600}
.lp-ticks li{display:flex;align-items:center;gap:.4rem;margin:0}
.lp-meta{font-size:.86rem;color:var(--lp-muted);max-width:52ch;margin:.9rem 0 0}
.lp-fl{position:absolute;background:#fff;border:1px solid var(--lp-line);border-radius:12px;box-shadow:0 10px 28px rgba(15,61,46,.14);padding:.6rem .8rem;font-size:.8rem;line-height:1.35;max-width:230px;display:none;z-index:3}
.lp-fl b{display:block;font-size:.84rem}
.lp-fl small{color:var(--lp-muted)}
.lp-ex{position:absolute;display:none;background:#FFD84D;color:#171717;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-radius:4px;padding:.15rem .4rem;z-index:3}
/* illustrative card stack (no-photo hero) */
.lp-stack{display:none}
.lp-sec{padding:3rem 0}
.lp-sec.white{background:#fff;border-top:1px solid var(--lp-line);border-bottom:1px solid var(--lp-line)}
body.lp .lp-sec h2{font-size:clamp(1.5rem,5vw,2rem);font-weight:800;margin:0 0 1rem;max-width:none}
.lp-kicker{font-size:.74rem;font-weight:800;letter-spacing:.1em;color:var(--lp-mid);text-transform:uppercase;margin:0 0 .5rem;display:block}
.lp-intro{color:var(--lp-soft);max-width:60ch;margin:0 0 1.4rem}
.lp-card h3{font-size:1.05rem;font-weight:800;margin:.8rem 0 .25rem}
.lp-card p{margin:0;color:var(--lp-soft);font-size:.95rem}
.lp-check{list-style:none;padding:0;margin:0;display:grid;gap:.55rem}
.lp-check li{position:relative;padding-left:1.8rem;margin:0}
.lp-check li:before{content:"";position:absolute;left:0;top:.2rem;width:1.15rem;height:1.15rem;border-radius:50%;background:var(--lp-bright) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F3D2E' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/70% no-repeat}
.lp-steps b{display:block}
.lp-steps span{color:var(--lp-soft);font-size:.94rem}
.lp-grid2{display:grid;gap:1.5rem}
.lp-price{font-size:2rem;font-weight:800;color:var(--lp-green);margin:.2rem 0 .6rem}
.lp-price small{font-size:1rem;font-weight:500;color:var(--lp-muted)}
.lp-cta{background:var(--lp-green);color:#fff;border-radius:16px;padding:2rem 1.5rem;position:relative;overflow:hidden}
body.lp .lp-cta h2,body.lp .lp-cta p{color:#fff!important}
.lp-cta .lp-ghost{display:inline-flex;align-items:center;border:2px solid #fff;color:#fff!important;border-radius:8px;padding:.85rem 1.3rem;font-weight:800;text-decoration:none}
.lp-actions{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}
.lp-btn2{display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--lp-green);color:var(--lp-green)!important;background:#fff;border-radius:8px;padding:.85rem 1.3rem;font-weight:800;text-decoration:none}
.lp-faq dt{font-weight:800;color:var(--lp-ink)}
.lp-faq dd{margin:.3rem 0 0;color:var(--lp-soft);font-size:.95rem}
.lp-note{font-family:var(--lp-hand);font-weight:600;color:var(--lp-green);font-size:1.75rem;line-height:1.1;transform:rotate(-4deg);display:inline-block;margin:1rem 0 0}
.lp-disc{font-size:.88rem;color:var(--lp-muted);padding:1.5rem 0}
@media(min-width:760px){
 .lp-links{display:flex}
 .lp-grid2{grid-template-columns:1.2fr 1fr;align-items:start}
 .lp-sec{padding:4.25rem 0}
 .lp-foot .lp-wrap{grid-template-columns:auto 1fr;align-items:center;gap:2rem}
 .lp-cta{padding:2.75rem}
}
@media(min-width:980px){
 .lp-phero{min-height:620px}
 .lp-phero-img{position:absolute;inset:0;height:auto}
 .lp-phero:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(247,245,236,.98) 0%,rgba(247,245,236,.92) 34%,rgba(247,245,236,.45) 52%,rgba(247,245,236,0) 64%),linear-gradient(0deg,rgba(247,245,236,1) 0%,rgba(247,245,236,0) 16%);pointer-events:none}
 .lp-phero .lp-wrap{padding:4rem 0 4.5rem}
 .lp-phero .lp-copy{max-width:560px}
 .lp-fl,.lp-ex{display:block}
 .lp-stack{display:block}
}

/* CTA fix 13 Oct: decorative layers must never take taps */
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
[id]{scroll-margin-top:84px}
.hero-fl,.hero-fl *,.fl,.ex,.hero:after,.chatsec:before,.chat-bg,.hero-bg,.lp-phero:after,.lp-phero-img,.lp-fl,.lp-ex,.lp-stack,.lp-stack *,.lp-band:after,.note1,.note2,.note3,.lp-note{pointer-events:none}
.hero .w,.hero-copy{position:relative;z-index:4}
.lp-phero .lp-wrap{z-index:4}
