/* The app look: one restrained palette. Dark navy header, white cards, dark gray text, ONE accent (deep green) for the main action.
   Applies to the app pages (body.app: install, sign in, join, dashboard, lead detail) and to the directory listings (body.dir). Looks only; no behavior. */
body.app, body.dir {
  --navy: #0e2a1b; --ink: #1a2433; --muted: #5b6573; --line: #e3e6ea; --card: #ffffff; --canvas: #f2f3f5; --accent: #1f5c3f; --accent-d: #17482f;
  --font: Inter, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
body.app { background: var(--canvas); color: var(--ink); font-family: var(--font); }
body.app * { font-family: var(--font); }
body.app h1, body.app h2, body.app h3, body.app h4, body.app .eyebrow { font-family: var(--font); text-transform: none; letter-spacing: 0; font-weight: 600; color: var(--navy); }
body.app h1 { font-size: clamp(1.9rem, 6vw, 2.4rem); line-height: 1.15; margin: 8px 0 14px; }
body.app h2 { font-size: 1.25rem; line-height: 1.25; margin: 34px 0 10px; }
body.app p, body.app li { color: var(--ink); line-height: 1.55; }
body.app .note, body.app .sub, body.app small { color: var(--muted); }

/* header: navy, shield and name only */
body.app header.top { background: var(--navy); border-bottom: 0; position: static; padding: 6px 0 34px; }
body.app header.top .wrap.nav { padding-top: 14px; padding-bottom: 6px; }
body.app header.top ul, body.app header.top .menu-btn { display: none !important; }
body.app header.top .brand { gap: 12px; }
body.app header.top .brand span { font: 600 1.15rem/1 var(--font); letter-spacing: 0; text-transform: none; color: #fff; }
body.app header.top .brand svg path:first-child { fill: #a3e635; }
body.app header.top .brand svg path:last-child { stroke: var(--navy); }
body.app main { margin-top: -22px; position: relative; }
body.app .s { padding: 0 0 40px; background: transparent; }
body.app .s .wrap { background: var(--card); border-radius: 22px; box-shadow: 0 12px 34px rgba(14,42,27, .08); padding: 30px 26px 34px; margin-left: 16px; margin-right: 16px; max-width: 760px; }
@media (min-width: 800px) { body.app .s .wrap { margin-left: auto; margin-right: auto; } }
body.app .eyebrow { font-size: .85rem; font-weight: 500; color: var(--muted); text-transform: none; margin: 0 0 4px; }
body.app .eyebrow i { display: none; }

/* buttons: one accent for the main action, everything else a quiet outline */
body.app .btn { font: 600 .98rem var(--font); letter-spacing: 0; text-transform: none; border-radius: 12px; padding: 12px 20px; box-shadow: none; transition: none; }
body.app .btn-sm { padding: 9px 16px; font-size: .9rem; }
body.app .btn-lg { padding: 14px 22px; font-size: 1.02rem; }
body.app .btn-alert, body.app .btn-teal, body.app .btn-amber { background: var(--accent); color: #fff; border: 1.5px solid var(--accent); }
body.app .btn-alert:hover, body.app .btn-teal:hover, body.app .btn-amber:hover { background: var(--accent-d); }
body.app .btn-ghost-dark, body.app .btn-ghost, body.app .btn-dark { background: #fff; color: var(--navy); border: 1.5px solid var(--navy); }
body.app .btn[disabled] { opacity: .55; }
body.app a { color: var(--navy); }
body.app .msg { border-radius: 12px; font-size: .95rem; }

/* lead detail: Call is the main button; Maps, Text, Email are quiet outlines */
body.app .tapgrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin: 18px 0 8px; }
body.app .tap { min-height: 0; padding: 12px 10px; border-radius: 12px; background: #fff; color: var(--navy); border: 1.5px solid var(--navy); flex-direction: row; align-items: center; justify-content: center; gap: 8px; text-align: center; }
body.app .tap b { font: 600 .98rem var(--font); text-transform: none; letter-spacing: 0; }
body.app .tap span { display: none; }
body.app .tap.t-call { grid-column: 1 / -1; order: -1; background: var(--accent); color: #fff; border-color: var(--accent); padding: 16px 12px; }
body.app .tap.t-call b { font-size: 1.15rem; }
body.app .tap.t-call span { display: inline; color: rgba(255,255,255,.9); font-size: .95rem; opacity: 1; }
body.app .tap.t-find { grid-column: 1 / -1; order: -1; background: var(--accent); color: #fff; border-color: var(--accent); padding: 16px 12px; }
body.app .tap.t-find span { display: inline; color: rgba(255,255,255,.9); font-size: .9rem; opacity: 1; }
body.app .findbox input { border: 1.5px solid var(--line); border-radius: 12px; }

/* status */
body.app .stbar { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
body.app .st { background: #eceef1; color: #3b4452; border: 1.5px solid #dfe3e8; border-radius: 12px; font: 500 .92rem var(--font); padding: 12px 4px; }
body.app .st.on, body.app .st.on.s-not_yet, body.app .st.on.s-called, body.app .st.on.s-won, body.app .st.on.s-lost { background: var(--navy); color: #fff; border-color: var(--navy); }
body.app .stnote { color: var(--muted); font: 400 .82rem var(--font); }
body.app .pill, body.app .pill.s-called, body.app .pill.s-won, body.app .pill.s-lost, body.app .pill.s-not_yet { background: #eceef1; color: #3b4452; font: 500 .8rem var(--font); border-radius: 8px; padding: 4px 10px; }
body.app .heat { font: 600 .78rem var(--font); letter-spacing: 0; text-transform: none; border-radius: 8px; padding: 4px 10px; }
body.app .heat-hot { background: #f0c4c4; color: #8c2323; }
body.app .heat-warm { background: #e4e6e9; color: #4a5361; }

/* dashboard */
body.app .dhead h1 { margin: 0; }
body.app .dpanel { background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 22px 20px; margin-top: 22px; box-shadow: none; }
body.app .dpanel.still { border: 1.5px solid #c9d1dc; }
body.app .dpanel h2 { margin-top: 0; }
body.app .dday { font: 600 .9rem var(--font); letter-spacing: 0; text-transform: none; color: var(--muted); margin: 22px 0 10px; }
body.app .leadcard { background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 16px 16px 14px; margin-bottom: 14px; }
body.app .heatcard-hot { border-left: 1px solid var(--line); }
body.app .ltitle { font: 600 1.08rem var(--font); color: var(--navy); text-decoration: none; letter-spacing: 0; text-transform: none; }
body.app .findlink { font: 600 .9rem var(--font); color: var(--navy); border: 1.5px solid var(--navy); border-radius: 10px; padding: 7px 14px; text-decoration: none; margin: 4px 0 12px; }
body.app .dfilters select { border: 1.5px solid var(--line); border-radius: 12px; background: #fff; color: var(--ink); font: 500 .95rem var(--font); }
body.app .phone { border-bottom: 1px solid var(--line); }
body.app .evt { border-bottom: 1px solid var(--line); }

/* install page: same palette and spacing, one green button */
body.app #ia-install-steps h2 { margin-top: 26px; }
body.app #enable-btn { width: 100%; justify-content: center; }
body.app #install-btn { background: var(--accent); }

/* quiet footer: just the legal line */
body.app footer.bot { background: transparent; border: 0; padding: 0 16px 40px; }
body.app footer.bot .fgrid { display: none; }
body.app footer.bot .note { color: #7a8493 !important; text-align: center; font-size: .78rem; margin: 0 !important; }
body.app #stickycta, body.app #toTop { display: none !important; }

/* directory list (city pages): navy and white, outline buttons, gold-free */
body.dir .listing { background: #fff; border: 1px solid #e3e6ea; border-radius: 16px; box-shadow: 0 6px 18px rgba(14,42,27,.05); padding: 22px 22px; }
body.dir .listing h3 { font: 600 1.2rem Inter, sans-serif; letter-spacing: 0; text-transform: none; color: #0e2a1b; }
body.dir .listing p { color: #3b4452; }
body.dir .listing .btn { background: #fff; color: #0e2a1b; border: 1.5px solid #0e2a1b; border-radius: 12px; font: 600 .92rem Inter, sans-serif; box-shadow: none; }
body.dir .listing.featured { border: 1.5px solid #0e2a1b; }
body.dir .listing .badge, body.dir .pill.ok { background: #eceef1; color: #3b4452; border-radius: 8px; font: 600 .75rem Inter, sans-serif; letter-spacing: 0; text-transform: none; }
body.dir #stickycta { background: #0e2a1b; }
body.dir #stickycta .btn { background: #a3e635; color: #0e2a1b; border: 0; border-radius: 12px; box-shadow: none; font: 700 .9rem Inter, sans-serif; }

body.app .cardrow { display: flex; gap: 10px; flex-wrap: wrap; margin: 6px 0 2px; }
body.app #ia-dash .btn { background: #fff; color: var(--navy); border: 1.5px solid var(--navy); }
body.app .eyebrow + .heat { display: inline-block; margin: 0 0 10px; }
body.app .eyebrow { display: inline-block; margin-right: 10px; }
body.dir main h2 { font-family: Inter, -apple-system, "Segoe UI", sans-serif; text-transform: none; letter-spacing: 0; font-weight: 600; color: #0e2a1b; }
body.dir .slot { background: #fff; border: 1.5px dashed #c9d1dc; border-radius: 16px; }
body.dir .slot .btn { background: #a3e635; color: #0e2a1b; border: 0; border-radius: 12px; box-shadow: none; }
body.dir #toTop { background: #0e2a1b; color: #fff; box-shadow: none; }

/* ===== landing page: same look as the app. Dark navy header, white background, gold for the main buttons. ===== */
body.land { --navy: #0e2a1b; --navy2: #0b2416; --gold: #a3e635; --gold-d: #84cc16; --ink: #1a2433; background: #fff; color: var(--ink); }
body.land header.top { background: var(--navy); border-bottom: 0; }
body.land header.top .brand span { font-family: Inter, -apple-system, "Segoe UI", sans-serif; text-transform: none; letter-spacing: 0; font-weight: 600; }
body.land header.top .brand svg path:first-child { fill: var(--gold); }
body.land header.top ul .l { color: #dfe6f2; }
body.land .btn-alert, body.land .btn-amber, body.land .btn-teal { background: var(--gold); color: var(--navy); border: 0; box-shadow: none; font-weight: 700; }
body.land .btn-alert:hover, body.land .btn-amber:hover, body.land .btn-teal:hover { background: var(--gold-d); }
body.land .btn-ghost { background: transparent; color: #fff; border: 1.5px solid rgba(255,255,255,.6); }
body.land .btn-ghost-dark, body.land .btn-dark { background: #fff; color: var(--navy); border: 1.5px solid var(--navy); }
body.land header.top .btn-amber { background: var(--gold); color: var(--navy); }
/* hero: navy, the team photo, no red glow */
body.land .cine { background: linear-gradient(180deg, var(--navy), var(--navy2)); }
body.land .cine .redglow, body.land .cine .scan, body.land .cine .grain { display: none; }
body.land .cine .bgimg { opacity: .14; filter: saturate(.3) brightness(.9); }
body.land .cine .shade { background: linear-gradient(90deg, var(--navy) 8%, rgba(14,42,27,.82) 46%, rgba(14,42,27,.2) 100%); }
body.land .cine h1 em { color: var(--gold); text-shadow: none; }
body.land .cine .eyebrow { color: var(--gold); } body.land .cine .eyebrow i { background: var(--gold); box-shadow: none; }
body.land .cine .man::before { background: radial-gradient(circle, rgba(163,230,53,.28), rgba(163,230,53,0) 66%); animation: none; }
body.land .cine .man img { filter: drop-shadow(0 0 2px rgba(255,255,255,.45)) drop-shadow(0 18px 40px rgba(0,0,0,.45)); }
body.land .chip { background: #fff; color: var(--navy); border: 0; box-shadow: 0 10px 30px rgba(0,0,0,.3); }
body.land .chip b { color: #8c2323; background: #f0c4c4; border-radius: 6px; padding: 2px 7px; }
body.land .cine .proof b { color: #fff; font-family: Inter, sans-serif; font-weight: 700; font-size: 1.2rem; }
body.land .feed { background: var(--navy2); color: #dfe6f2; border-color: rgba(255,255,255,.08); }
body.land .feed b { color: var(--gold); background: transparent; }
/* phone mockup: Call is the main button, the others are quiet outlines */
body.land .appsec { background: #fff; color: var(--ink); }
body.land .appsec h2 { color: var(--navy); } body.land .appsec .sub, body.land .appsec .ticks li { color: #3b4452; }
body.land .appsec .eyebrow { color: #5b6573; } body.land .appsec .eyebrow i { background: var(--gold); box-shadow: none; }
body.land .appsec .ticks li::before { background: var(--navy); }
body.land .phoneframe { background: #14171d; box-shadow: 0 28px 60px rgba(14,42,27,.28); }
body.land .pbar { background: var(--navy); }
body.land .pitem.open { border: 1.5px solid var(--navy); }
body.land .ptag { background: #f0c4c4; color: #8c2323; }
body.land .ptaps { grid-template-columns: repeat(3, 1fr); }
body.land .ptaps span { background: #fff; color: var(--navy); border: 1.5px solid var(--navy); font: 600 .82rem Inter, Arial, sans-serif; letter-spacing: 0; text-transform: none; padding: 9px 2px; border-radius: 10px; }
body.land .ptaps span:first-child { grid-column: 1 / -1; background: #1f5c3f; border-color: #1f5c3f; color: #fff; font-size: .95rem; padding: 12px 2px; }
body.land .pfoot span, body.land .pfoot span:nth-child(1), body.land .pfoot span:nth-child(2), body.land .pfoot span:nth-child(3) { background: #eceef1; color: #3b4452; border-color: #dfe3e8; }
body.land .pfoot span:nth-child(1) { background: var(--navy); color: #fff; border-color: var(--navy); }
/* sections: white and navy only */
body.land .weekband, body.land .problem, body.land .solution { background: var(--navy); color: #e6ecf6; border: 0; }
body.land .weekband::before { display: none; }
body.land .problem::before { color: rgba(255,255,255,.04); }
body.land .weekband .bignum b { color: var(--gold); text-shadow: none; }
body.land .bar i, body.land .bt i { background: var(--gold); box-shadow: none; }
body.land .solution { background: var(--navy2); }
body.land .solution .eyebrow, body.land .solution .sub { color: #c9d6ea !important; } body.land .solution .eyebrow i { background: var(--gold) !important; }
body.land .problem .photo.cast::after { background: linear-gradient(0deg, rgba(14,42,27,.6), rgba(14,42,27,.1) 55%, rgba(4,10,6,.25)); }
body.land .s.teal, body.land .s.paper { background: #f5f6f8; color: var(--ink); }
body.land .s.teal h2, body.land .s.paper h2, body.land .s h2 { color: var(--navy); }
body.land .vcard, body.land .card, body.land .step, body.land .plan { background: #fff; border: 1px solid #e3e6ea; border-radius: 16px; box-shadow: 0 6px 18px rgba(14,42,27,.05); }
body.land .plan.best { border: 2px solid var(--gold); } body.land .pbadge { background: var(--gold); color: var(--navy); }
body.land .plan.exc { border: 2px solid var(--navy); } body.land .pbadge.pb-ex { background: var(--navy); color: #fff; }
body.land .pill { background: #eceef1; color: #3b4452; } body.land .pill.late { background: #f0c4c4; color: #8c2323; }
body.land .vi { color: var(--navy); background: #eef1f6; }
body.land footer.bot { background: var(--navy); }
body.land #stickycta { background: var(--navy); } body.land #stickycta .btn { background: var(--gold); color: var(--navy); }
body.land #toTop { background: var(--navy); color: #fff; box-shadow: none; }
body.land .vidsec .vplay { background: var(--navy); box-shadow: 0 0 0 8px rgba(14,42,27,.2); }
body.land .exbox, body.land .exrow { border-color: #e3e6ea; background: #fff; }
body.land .soldout { background: #eceef1; color: #3b4452; }
body.land .cine { min-height: min(76vh, 680px); }
body.land .eyebrow i { background: var(--gold) !important; box-shadow: none !important; }
body.land .step::before, body.land .step:nth-child(2)::before, body.land .step:nth-child(3)::before { background: var(--navy); color: #fff; }
/* these pages use one fixed light look (navy, white, gold): keep it in a dark-mode browser too */
@media (prefers-color-scheme: dark) {
  body.app, body.dir, body.land { --cream: #f7f4ee; --paper: #fff; --line: #e4ded2; --text: #14212e; --muted: #5a6775; --teal-bg: #eaf7ec; --red-bg: #fdecec; color-scheme: light; }
  body.app { background: #f2f3f5; }
}
.dpanel.upg{border:1.5px solid #0e2a1b}

/* ===== real gold: metallic gradients with bevel and depth, 3D gold icons ===== */
:root{--gold-grad:linear-gradient(180deg,#ecfccb 0%,#d9f99d 20%,#8fd42a 46%,#65a30d 70%,#d9f99d 100%)}
.logo3d{width:29px;height:auto;filter:drop-shadow(0 2px 3px rgba(0,0,0,.45))}
body.land .btn-alert,body.land .btn-amber,body.land .btn-teal,body.land header.top .btn-amber,body.land #stickycta .btn,body.dir .listing .btn-amber,body.dir #stickycta .btn,body.dir .slot .btn{background:var(--gold-grad);color:#132009;border:0;text-shadow:0 1px 0 rgba(255,255,255,.5);box-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -2px 0 rgba(54,83,20,.5),0 8px 20px rgba(0,0,0,.28)}
body.land .btn-alert:hover,body.land .btn-amber:hover,body.land .btn-teal:hover{background:var(--gold-grad);filter:brightness(1.06);transform:translateY(-1px)}
body.land .cine h1 em,body.land .mapsec .maph .tick,body.land .weekband .bignum b{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(0 2px 0 #2f4a10) drop-shadow(0 7px 12px rgba(0,0,0,.35))}
body.land .plan .amt{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 0 #365314)}
body.land .plan .amt small{-webkit-text-fill-color:#5b6573;color:#5b6573;background:none}
body.land .plan.best{border:2px solid #8fd42a;box-shadow:0 16px 40px rgba(101,163,13,.22)}
body.land .pbadge{background:var(--gold-grad);color:#132009;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
body.land .pbadge.pb-ex{background:#0e2a1b;color:#d9f99d;box-shadow:none}
.plan3d{position:absolute;top:-22px;right:18px;width:64px;height:auto;filter:drop-shadow(0 8px 10px rgba(14,42,27,.35));pointer-events:none}
.plan{position:relative}
.alertpop{display:flex;align-items:center;gap:9px}.alertpop img{width:20px;height:auto;flex:none;filter:drop-shadow(0 1px 1px rgba(0,0,0,.3))}
body.land .phonestage .phoneframe{background:linear-gradient(160deg,#3a3f48,#101318 55%,#2b2f37)}
body.land .mapsec .pin .dot{fill:url(#goldpin);stroke:#effcd8}
body.land .maplegend li span{background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
body.land footer.bot{background:linear-gradient(180deg,#0e2a1b,#071a10)}
.plan3d{position:static!important;display:block;width:58px;height:auto;margin:-44px 0 6px auto}
.calrow{margin:6px 0 4px}.calbtn{border-color:#0e2a1b}

fieldset.kind{border:0;margin:12px 0;padding:0}
fieldset.kind legend{font-weight:700;margin-bottom:6px;padding:0}
fieldset.kind label.radio{display:inline-flex;align-items:center;gap:6px;margin:0 18px 6px 0;font-weight:400}
fieldset.kind input[type=radio]{width:auto;margin:0}
.planpanel .planrow{border-top:1px solid #e3e6ea;padding:12px 0}
.planpanel .addarea select{margin:4px 8px 4px 0;max-width:100%}
.plancfm{margin-top:14px;padding:14px;border:1px solid #a3e635;border-radius:12px;background:#f7fef0}

/* Homepage area check (assets/finder.js): type a city, county or ZIP and see that area's own numbers. Shared by all three alert sites. */
.finder{margin:26px 0 0;max-width:600px}
.fz-label{display:block;margin:0 0 10px;font:600 .8rem/1 "JetBrains Mono",ui-monospace,Consolas,monospace;letter-spacing:.14em;text-transform:uppercase;color:#a3e635}
.fz-row{display:flex;gap:6px;padding:6px;background:#fff;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.35);transition:box-shadow .2s}
.fz-row:focus-within{box-shadow:0 0 0 3px rgba(163,230,53,.7),0 18px 50px rgba(0,0,0,.35)}
.fz-row input{flex:1 1 0;width:0;min-width:0;border:0;outline:0;background:transparent;color:#0e2a1b;font:600 1.12rem Inter,Arial,sans-serif;padding:12px 12px}
.fz-row input::placeholder{color:#7a8597;font-weight:500}
.fz-row input::-webkit-search-cancel-button{cursor:pointer}
.fz-row .btn{flex:none;padding:14px 26px;border-radius:11px;font-size:1.05rem}
.fz-try{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 0;color:#cfe0ef;font:500 .9rem Inter,Arial,sans-serif}
.fz-try a{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid rgba(255,255,255,.3);border-radius:999px;color:#fff;font-weight:600;text-decoration:none;transition:border-color .2s,background .2s}
.fz-try a:hover{border-color:#a3e635;background:rgba(163,230,53,.12)}
.fz-try a small{color:#a3e635;font-weight:700;font-size:.85rem}
.fz-try a.fz-all{border-style:dashed}
.fz-out{max-width:600px}
.fz-card{margin:14px 0 0;padding:20px 22px 18px;background:#fff;color:#1a2433;border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.4);animation:fzin .35s ease-out both;text-align:left}
.fz-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font:600 .85rem Inter,Arial,sans-serif}
.fz-live{display:inline-flex;align-items:center;gap:7px;color:#1f5c3f}
.fz-live i{width:9px;height:9px;border-radius:50%;background:#22a06b;animation:fzpulse 1.8s infinite}
.fz-late{padding:3px 10px;border-radius:999px;background:#f2fde0;color:#3f6212}
.fz-date{color:#5b6573}
.fz-name{margin:10px 0 2px;color:#0e2a1b;font:800 1.3rem/1.25 Inter,Arial,sans-serif}
.fz-why{margin:4px 0 0;color:#3b4452;font:500 .92rem/1.45 Inter,Arial,sans-serif}
.fz-big{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:10px 0 4px}
.fz-big b{color:#0e2a1b;font:400 3.3rem/1 Anton,Impact,"Arial Narrow",sans-serif;letter-spacing:.01em}
.fz-big span{color:#3b4452;font:600 1rem/1.3 Inter,Arial,sans-serif}
.fz-bars{display:block;width:100%;height:64px;margin:10px 0 2px}
.fz-bars rect{fill:#0e2a1b;transform-box:fill-box;transform-origin:50% 100%;animation:fzgrow .7s cubic-bezier(.2,.8,.2,1) both}
.fz-bars rect.now{fill:#a3e635}
.fz-axis{display:flex;justify-content:space-between;color:#7a8597;font:500 .75rem "JetBrains Mono",ui-monospace,Consolas,monospace}
.fz-facts{display:flex;flex-wrap:wrap;gap:6px 16px;margin:12px 0 0;padding:0;list-style:none;color:#1a2433;font:600 .92rem Inter,Arial,sans-serif}
.fz-facts li{display:flex;align-items:center;gap:7px}
.fz-facts li::before{content:"";width:6px;height:6px;border-radius:50%;background:#a3e635;flex:none}
.fz-mix{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0}
.fz-mix span{padding:4px 10px;border-radius:8px;background:#eef1f5;color:#3b4452;font:600 .82rem Inter,Arial,sans-serif}
.fz-mix b{color:#0e2a1b}
.fz-card .fz-go{display:block;margin:16px 0 0;text-align:center}
.fz-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;margin:12px 0 0;color:#5b6573;font:500 .86rem Inter,Arial,sans-serif}
.fz-foot a{color:#0e2a1b;font-weight:700}
.fz-also{margin:12px 0 0;color:#5b6573;font:500 .88rem Inter,Arial,sans-serif}
.fz-also button{margin:2px 4px 2px 0;padding:4px 10px;border:1px solid #c9d0da;border-radius:999px;background:#fff;color:#0e2a1b;font:600 .85rem Inter,Arial,sans-serif;cursor:pointer}
.fz-pick{display:grid;gap:8px;margin:12px 0 0}
.fz-pick button{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:12px 14px;border:1px solid #e3e6ea;border-radius:12px;background:#f4f6f9;color:#0e2a1b;font:700 1rem Inter,Arial,sans-serif;text-align:left;cursor:pointer;transition:border-color .2s,background .2s}
.fz-pick button:hover{border-color:#a3e635;background:#f7fef0}
.fz-pick button span small{display:block;color:#5b6573;font-weight:500;font-size:.82rem}
.fz-pick button > small{flex:none;color:#5b6573;font-weight:600;font-size:.85rem}
.fz-ask{margin:12px 0 0}
.fz-ask p{margin:0;color:#3b4452;font:500 .95rem/1.5 Inter,Arial,sans-serif}
.fz-req{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0}
.fz-req input[type=email]{flex:1;min-width:200px;padding:12px 14px;border:1.5px solid #c9d0da;border-radius:11px;color:#0e2a1b;font:500 1rem Inter,Arial,sans-serif}
.fz-req .hp{position:absolute;left:-9999px}
.fz-req .btn{padding:12px 20px}
.fz-ask .fz-msg{margin:8px 0 0;color:#1f5c3f;font-weight:600}
.fz-ask .fz-foot{margin-top:10px}
@keyframes fzin{from{opacity:0;transform:translateY(10px)}}
@keyframes fzgrow{from{transform:scaleY(0)}}
@keyframes fzpulse{0%{box-shadow:0 0 0 0 rgba(34,160,107,.55)}70%,100%{box-shadow:0 0 0 8px rgba(34,160,107,0)}}
@media(prefers-reduced-motion:reduce){.fz-card,.fz-bars rect,.fz-live i{animation:none}}
@media(max-width:560px){.fz-row input{font-size:1.05rem;padding:12px 8px}.fz-row .btn{padding:14px 18px}.fz-card{padding:16px 16px 14px}.fz-big b{font-size:2.7rem}.fz-try{font-size:.85rem}}

/* Homepage reel of real records, names and street numbers blacked out (lib/reel.mjs, assets/reel.js). Shared by all three alert sites. */
.reel{background:#f2f3f5;color:#1a2433;padding:64px 0 48px;overflow:hidden}
.reel h2{color:#0e2a1b;margin:6px 0 10px}
.reel .eyebrow{color:#5b6573}.reel .eyebrow i{background:#a3e635;box-shadow:none}
.reel .sub{max-width:740px;color:#3b4452}
.rl-head{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:40px;align-items:center}
.rl-aside .vphone{width:min(220px,100%)}.rl-aside figcaption b{color:#0e2a1b}
@media(max-width:800px){.rl-head{grid-template-columns:1fr;gap:18px}.rl-aside .vphone{width:min(190px,100%)}}
.rl-wrap{position:relative;margin-top:26px}
.rl-track{display:grid;grid-auto-flow:column;grid-auto-columns:min(340px,86%);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 20px;scrollbar-width:none;overscroll-behavior-x:contain;outline:0;align-items:start}
.rl-track::-webkit-scrollbar{display:none}
.rl-track:focus-visible{box-shadow:0 0 0 3px rgba(163,230,53,.6);border-radius:16px}
.rl-card{scroll-snap-align:start;display:flex;flex-direction:column;gap:10px;min-width:0;padding:18px 18px 14px;background:#fff;border:1px solid #e3e6ea;border-radius:16px;box-shadow:0 12px 30px rgba(14,42,27,.08);color:#1a2433}
.rl-top{display:flex;align-items:center;gap:8px;font:600 .88rem Inter,Arial,sans-serif}
.rl-tag{padding:2px 8px;border-radius:6px;background:#f0c4c4;color:#8c2323;font:700 .7rem "JetBrains Mono",ui-monospace,Consolas,monospace;letter-spacing:.08em}
.rl-list .rl-tag{background:#0e2a1b;color:#fff}
.rl-top b{color:#0e2a1b;min-width:0;line-height:1.25}
.rl-age{margin-left:auto;flex:none;color:#5b6573;font-weight:500;font-size:.82rem}
.rx{display:inline-block;max-width:100%;height:1.05em;vertical-align:-.15em;border-radius:3px;background:#11151c;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.rl-name{margin:2px 0 0;line-height:1}.rl-name .rx{height:1.35em}
.rl-none{color:#7a8597;font:500 .9rem Inter,Arial,sans-serif}
.rl-addr{margin:0;color:#3b4452;font:600 .95rem/1.45 Inter,Arial,sans-serif}
.rl-note small{display:block;margin-bottom:4px;color:#7a8597;font:600 .68rem "JetBrains Mono",ui-monospace,Consolas,monospace;letter-spacing:.12em;text-transform:uppercase}
.rl-note p{margin:0;color:#1a2433;font:500 .95rem/1.5 Inter,Arial,sans-serif}
.rl-extra{display:grid;gap:4px;margin:0;padding:0;list-style:none;color:#3b4452;font:600 .88rem Inter,Arial,sans-serif}
.rl-extra li{display:flex;align-items:center;gap:8px}
.rl-shown{display:inline-flex;align-items:center;gap:2px;color:#0e2a1b;font-variant-numeric:tabular-nums}
.rl-acts small{display:block;margin-bottom:6px;color:#7a8597;font:600 .68rem "JetBrains Mono",ui-monospace,Consolas,monospace;letter-spacing:.12em;text-transform:uppercase}
.rl-acts div{display:flex;flex-wrap:wrap;gap:6px}
.rl-acts span{padding:7px 12px;border:1.5px solid #0e2a1b;border-radius:10px;color:#0e2a1b;font:700 .82rem Inter,Arial,sans-serif}
.rl-acts span:first-child{background:#1f5c3f;border-color:#1f5c3f;color:#fff}
.rl-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 10px;margin-top:auto;padding-top:10px;border-top:1px solid #eef1f5;color:#5b6573;font:500 .8rem Inter,Arial,sans-serif}
.rl-lh{margin:0;color:#0e2a1b;font:800 1.05rem/1.3 Inter,Arial,sans-serif}
.rl-list ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.rl-list li{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:center;padding:8px 0;border-top:1px solid #eef1f5;font:500 .85rem Inter,Arial,sans-serif;color:#3b4452}
.rl-list li b{color:#8c2323;font-size:.78rem}
.rl-list li .rx{height:1.1em}
.rl-list li > span:last-child{grid-column:1/-1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rl-more{margin:0;color:#5b6573;font:600 .85rem Inter,Arial,sans-serif}
.rl-nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:6px}
.rl-btn{flex:none;display:grid;place-items:center;width:46px;height:46px;padding:0 0 4px;border:0;border-radius:50%;background:#0e2a1b;color:#fff;font:400 2rem/1 Inter,Arial,sans-serif;cursor:pointer;box-shadow:0 10px 24px rgba(14,42,27,.3);transition:transform .2s,background .2s}
.rl-btn:hover{background:#1a4a2c;transform:scale(1.06)}
.rl-dots{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;min-width:0}
.rl-dots button{width:8px;height:8px;padding:0;border:0;border-radius:4px;background:#c9d0da;cursor:pointer;transition:width .25s,background .25s}
.rl-dots button.on{width:22px;background:#a3e635}
.rl-cta{margin:24px 0 8px;text-align:center}
.reel .rl-fine{max-width:740px;margin:8px auto 0;text-align:center;color:#5b6573}
@media(max-width:700px){.rl-btn{width:40px;height:40px;font-size:1.7rem}.reel{padding:48px 0 40px}}

/* free weekly summary sign-up (public/assets/weekly.js): the small form in the area check card, and the full box on area pages */
.wk-mini{margin:14px 0 0;padding:12px 0 0;border-top:1px solid #eef1f5}
.wk-mini p{margin:0 0 8px;color:#3b4452;font:500 .92rem/1.45 Inter,Arial,sans-serif}
.wk-row{display:flex;flex-wrap:wrap;gap:6px}
.wk-row input[type=email],.wk-row input[name=company]{flex:1 1 0;width:0;min-width:180px;padding:11px 13px;border:1.5px solid #c9d0da;border-radius:11px;color:#0e2a1b;background:#fff;font:500 1rem Inter,Arial,sans-serif}
.wk-row .btn{padding:11px 18px}
.wk-form .hp{position:absolute;left:-9999px}
.wk-form .wk-msg{margin:8px 0 0;color:#1f5c3f;font:600 .92rem Inter,Arial,sans-serif}
.wk-form .wk-msg:empty{display:none}
.wk-done .wk-row,.wk-done select,.wk-done .wk-hide{display:none}
.wk{display:grid;grid-template-columns:1.1fr 1fr;gap:28px;align-items:center;padding:28px;border:1px solid #e3e6ea;border-radius:20px;background:#fff;box-shadow:0 18px 50px rgba(14,42,27,.08)}
.wk h2{margin:6px 0 8px}
.wk ul{margin:10px 0 0;padding-left:18px;color:#3b4452}
.wk .wk-form{display:grid;gap:8px}
.wk select{width:100%;padding:12px 13px;border:1.5px solid #c9d0da;border-radius:11px;background:#fff;color:#0e2a1b;font:500 1rem Inter,Arial,sans-serif}
.wk .note{margin:0;font-size:.85rem}
@media(max-width:760px){.wk{grid-template-columns:1fr;padding:20px}.wk-row input[type=email],.wk-row input[name=company]{min-width:0;flex-basis:100%}.wk-row .btn{width:100%}}
/* busiest-ZIP tables on area x trade pages */
.ziptable{width:100%;border-collapse:collapse;margin:10px 0 0;font-size:.95rem}
.ziptable th,.ziptable td{text-align:left;padding:7px 10px;border-bottom:1px solid #e3e6ea}
.ziptable td:last-child,.ziptable th:last-child{text-align:right}
/* lead cost comparison page (public/assets/calc.js) */
.cmp2{width:100%;border-collapse:collapse;margin:14px 0;font-size:.95rem;background:#fff;border-radius:14px;overflow:hidden}
.cmp2 th,.cmp2 td{text-align:left;vertical-align:top;padding:11px 12px;border-bottom:1px solid #e3e6ea}
.cmp2 thead th{background:#0e2a1b;color:#fff;font-weight:700}
.cmp2 tbody th{width:22%;color:#0e2a1b}
.calc{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:14px 0}
.calc-col{padding:18px;border:1px solid #e3e6ea;border-radius:16px;background:#fff}
.calc-col h3{margin:0 0 10px}
.calc label{display:grid;gap:4px;margin:0 0 10px;color:#3b4452;font:600 .9rem Inter,Arial,sans-serif}
.calc input{padding:10px 12px;border:1.5px solid #c9d0da;border-radius:10px;color:#0e2a1b;font:600 1rem Inter,Arial,sans-serif}
.calc-out{margin:6px 0 0;padding:12px;border-radius:12px;background:#f2f3f5;color:#14212e;font:500 .98rem/1.5 Inter,Arial,sans-serif}
.calc-out b{color:#0e2a1b}
@media(max-width:700px){.calc{grid-template-columns:1fr}.cmp2{font-size:.88rem}.cmp2 th,.cmp2 td{padding:9px 8px}}
/* listed-on badge page */
.bd-sel{width:100%;padding:12px 13px;border:1.5px solid #c9d0da;border-radius:11px;background:#fff;color:#0e2a1b;font:500 1rem Inter,Arial,sans-serif}
.bd-code{width:100%;margin:10px 0 0;padding:12px;border:1.5px solid #c9d0da;border-radius:11px;background:#f5f6f8;color:#14212e;font:500 .85rem/1.45 ui-monospace,Consolas,monospace;resize:vertical}
