/* NM Soluções — páginas programáticas (serviço × cidade) */
:root{--nmp-navy:#1e2f43;--nmp-gold:#e89c2d;--nmp-ink:#1c2733;--nmp-muted:#5b6b7a;--nmp-bg:#f4f6f8;--nmp-line:#e2e8f0;}
.nmp-main{font-family:-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--nmp-ink);line-height:1.6;}
.nmp-wrap{max-width:1080px;margin:0 auto;padding:0 20px;}
.nmp-eyebrow{color:var(--nmp-gold);font-weight:700;letter-spacing:1px;font-size:12px;margin:0 0 8px;text-transform:uppercase;}
.nmp-hero{background:var(--nmp-navy);color:#fff;padding:64px 0 56px;text-align:center;}
.nmp-hero h1{font-size:38px;line-height:1.2;margin:0 0 14px;color:#fff;font-weight:800;}
.nmp-hero .nmp-lead{font-size:18px;max-width:780px;margin:0 auto 28px;color:#dfe6ee;}
.nmp-cta-wrap{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:0;}
.nmp-btn{display:inline-block;padding:14px 28px;border-radius:8px;text-decoration:none;font-weight:700;transition:transform .15s,opacity .15s;}
.nmp-btn:hover{transform:translateY(-1px);}
.nmp-btn-primary{background:var(--nmp-gold);color:var(--nmp-navy);}
.nmp-btn-ghost{border:2px solid #fff;color:#fff;background:transparent;}
.nmp-btn-ghost:hover{background:#fff;color:var(--nmp-navy);}
.nmp-stats{background:#fff;padding:28px 0;border-bottom:1px solid var(--nmp-line);}
.nmp-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.nmp-stat{text-align:center;}
.nmp-stat .nmp-num{display:block;color:var(--nmp-gold);font-size:42px;font-weight:800;line-height:1;}
.nmp-stat .nmp-lbl{display:block;color:var(--nmp-muted);font-size:14px;margin-top:8px;}
.nmp-section{padding:56px 0;}
.nmp-section h2{color:var(--nmp-navy);font-size:30px;line-height:1.25;margin:0 0 18px;font-weight:700;}
.nmp-section p{margin:0 0 14px;}
.nmp-bg-light{background:var(--nmp-bg);}
.nmp-bg-dark{background:var(--nmp-navy);color:#fff;}
.nmp-bg-dark h2,.nmp-bg-dark h3{color:#fff;}
.nmp-lead-light{color:#dfe6ee;font-size:17px;}
.nmp-chip-list{list-style:none;padding:0;margin:18px 0;display:flex;flex-wrap:wrap;gap:10px;}
.nmp-chip-list li{background:#fff;border:1px solid var(--nmp-line);color:var(--nmp-navy);padding:8px 16px;border-radius:999px;font-weight:600;font-size:14px;}
.nmp-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:22px;}
.nmp-card{background:#fff;border:1px solid var(--nmp-line);border-radius:12px;padding:24px;}
.nmp-card h3{color:var(--nmp-navy);margin:0 0 10px;font-size:18px;}
.nmp-card p{margin:0;color:var(--nmp-muted);}
.nmp-steps{list-style:none;padding:0;margin:22px 0 0;counter-reset:s;display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.nmp-steps li{counter-increment:s;background:#fff;border:1px solid var(--nmp-line);border-radius:10px;padding:20px;position:relative;padding-left:74px;}
.nmp-steps li::before{content:"0" counter(s);position:absolute;left:20px;top:18px;color:var(--nmp-gold);font-weight:800;font-size:22px;}
.nmp-pain{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:22px;}
.nmp-pain h3{margin:0 0 8px;font-size:18px;}
.nmp-pain p{margin:0;color:#dfe6ee;font-size:14.5px;}
.nmp-regional{background:linear-gradient(180deg,#fff 0,#f7faff 100%);border-top:4px solid var(--nmp-gold);}
.nmp-quote{margin:24px 0 0;border-left:4px solid var(--nmp-gold);padding:8px 16px;background:#fff;border-radius:0 8px 8px 0;color:var(--nmp-navy);font-style:italic;}
.nmp-faq{background:#fff;border:1px solid var(--nmp-line);border-radius:10px;padding:14px 18px;margin:10px 0;}
.nmp-faq summary{cursor:pointer;font-weight:700;color:var(--nmp-navy);font-size:16px;}
.nmp-faq[open]{box-shadow:0 2px 12px rgba(0,0,0,.04);}
.nmp-faq p{margin:10px 0 0;color:var(--nmp-muted);}
.nmp-cta-final{text-align:center;}
.nmp-cta-final .nmp-cta-wrap{margin-top:18px;}
@media (max-width:780px){
  .nmp-hero{padding:48px 0 40px;}
  .nmp-hero h1{font-size:28px;}
  .nmp-grid-3,.nmp-grid-2,.nmp-steps{grid-template-columns:1fr;}
  .nmp-section{padding:42px 0;}
  .nmp-section h2{font-size:24px;}
}

/* Animações ao rolar (Intersection Observer adiciona .nmp-in-view) */
.nmp-anim{opacity:0;transform:translateY(28px);transition:opacity .6s ease, transform .6s ease;}
.nmp-anim.nmp-in-view{opacity:1;transform:none;}
.nmp-anim-delay-1{transition-delay:.08s;}
.nmp-anim-delay-2{transition-delay:.16s;}
.nmp-anim-delay-3{transition-delay:.24s;}
@media (prefers-reduced-motion: reduce){.nmp-anim{opacity:1;transform:none;transition:none;}}

/* Diretório: chips de cidades agrupados por região */
.nmp-region-group{margin:18px 0 24px;}
.nmp-region-title{color:var(--nmp-gold);font-size:13px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;margin:0 0 10px;border-left:3px solid var(--nmp-gold);padding-left:10px;}
.nmp-city-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;}
.nmp-city-list a{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--nmp-navy) !important;border:1px solid var(--nmp-navy) !important;border-radius:8px;color:#fff !important;text-decoration:none !important;font-weight:600;font-size:14.5px;transition:transform .15s,border-color .15s,background .15s,color .15s;}
.nmp-city-list a:hover{transform:translateY(-2px);background:#fff !important;color:var(--nmp-navy) !important;border-color:var(--nmp-gold) !important;}
.nmp-city-list .nmp-uf{font-size:11px;font-weight:700;color:var(--nmp-gold);background:rgba(232,156,45,.18);padding:2px 7px;border-radius:999px;}
.nmp-city-list a:hover .nmp-uf{background:var(--nmp-gold);color:var(--nmp-navy);}

/* Trava cores dos botões (alguns temas/kits forçam o hover em branco) */
.nmp-btn,.nmp-btn:visited,.nmp-btn:focus{text-decoration:none !important;}
.nmp-btn-primary,.nmp-btn-primary:visited,.nmp-btn-primary:focus,.nmp-btn-primary:hover,.nmp-btn-primary:active{background:#e89c2d !important;color:#1e2f43 !important;border:none !important;}
.nmp-btn-ghost,.nmp-btn-ghost:visited,.nmp-btn-ghost:focus{background:transparent !important;color:#ffffff !important;border:2px solid #ffffff !important;}
.nmp-btn-ghost:hover,.nmp-btn-ghost:active{background:#ffffff !important;color:#1e2f43 !important;border:2px solid #ffffff !important;}
