/* Portal estadual (10/11/2026): editorial, celular primeiro, cores do logotipo oficial (assets/marca/PALETA.md). */
:root{--es-azul:#0A66B3;--es-azul-esc:#08528F;--es-ciano:#1394B6;--es-laranja:#EC8A31;--es-papel:#F5EEEB;--es-txt:#1C2B36;--es-sub:#5A6874;--es-borda:#E6E2DE}

.es-hero{background:linear-gradient(125deg,var(--es-azul-esc) 0%,var(--es-azul) 45%,var(--es-ciano) 100%);color:#fff;padding:34px 0 30px}
.es-hero-in{display:grid;gap:22px}
.es-sobre{margin:0 0 6px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;opacity:.85;font-weight:700}
.es-hero h1{color:#fff!important;font-size:clamp(1.75rem,6.2vw,2.9rem);line-height:1.08;margin:0 0 12px;letter-spacing:-.01em;font-weight:800}
.es-sub{font-size:clamp(1rem,2.6vw,1.15rem);margin:0;max-width:40em;opacity:.95}
.es-botoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.es-botoes .btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center}
.es-hero .btn-prim{background:var(--es-laranja);color:#fff;border-color:var(--es-laranja)}
.es-hero .btn-sec{background:#fff;color:var(--es-azul);border-color:#fff}
.es-btn-claro{background:transparent;color:#fff!important;border:2px solid rgba(255,255,255,.7)}
.es-numeros{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.es-numeros div{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);border-radius:14px;padding:12px 14px}
.es-numeros dt{font-size:.78rem;opacity:.85}
.es-numeros dd{margin:2px 0 0;font-size:1.6rem;font-weight:800;line-height:1.1}

.es-busca .bx-titulo{margin-bottom:8px}
.es-regiao-form{display:flex;flex-direction:column;gap:6px;margin:0 0 14px;padding:12px 14px;background:#fff;border:1px solid var(--es-borda);border-radius:12px}
.es-regiao-form label{font-weight:700;font-size:.92rem;color:var(--es-txt)}
.es-regiao-linha{display:flex;gap:8px;flex-wrap:wrap}
.es-regiao-linha select{flex:1 1 220px;min-width:0;padding:11px;border:1px solid #D9E2EC;border-radius:10px;font-size:1rem;background:#fff}
.es-regiao-linha .btn{min-height:44px}

.es-cab{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.es-cab h2{margin-bottom:4px}
.es-cab a{font-weight:700;text-decoration:none}

.es-reg-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:14px;margin-top:10px}
.es-reg{display:flex;flex-direction:column;border:1px solid var(--es-borda);border-radius:16px;overflow:hidden;background:#fff;text-decoration:none;color:var(--es-txt);transition:box-shadow .15s,transform .15s}
.es-reg:hover{box-shadow:0 10px 26px rgba(10,102,179,.14);transform:translateY(-2px)}
.es-reg-capa{position:relative;display:flex;align-items:center;justify-content:center;height:128px;background:linear-gradient(135deg,var(--es-azul) 0%,var(--es-ciano) 100%) center/cover no-repeat}
.es-reg-capa img{width:78%;height:auto;max-height:112px;object-fit:contain}
.es-reg-n{position:absolute;left:12px;bottom:10px;background:#fff;color:var(--es-azul-esc);font-size:.85rem;padding:3px 10px;border-radius:20px}
.es-reg-corpo{display:flex;flex-direction:column;gap:4px;padding:12px 14px 14px}
.es-reg-corpo strong{font-size:1.05rem;color:var(--es-azul-esc)}
.es-reg-corpo small{color:var(--es-sub);line-height:1.4}
.es-reg-ver{margin-top:4px;font-weight:700;font-size:.88rem;color:var(--es-azul)}

.es-filtro{display:flex;flex-direction:column;gap:4px;max-width:420px;margin:6px 0 12px}
.es-filtro span{font-weight:700;font-size:.9rem}
.es-filtro input{padding:12px;border:1px solid #D9E2EC;border-radius:10px;font-size:1rem}
.es-cid-lista{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:8px}
.es-cid-lista a{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:11px 14px;border:1px solid var(--es-borda);border-radius:12px;background:#fff;text-decoration:none;color:var(--es-txt);min-height:44px;box-sizing:border-box}
.es-cid-lista a:hover{border-color:var(--es-azul)}
.es-cid-lista b{background:#EAF3FA;color:var(--es-azul);font-size:.82rem;padding:2px 9px;border-radius:20px}
.es-js .es-cid-lista li.es-extra{display:none}
.es-js .es-cid-lista.aberta li.es-extra,.es-js .es-cid-lista.filtrando li{display:block}
.es-js .es-cid-lista.filtrando li.oculta{display:none}
.es-cid-mais{margin-top:12px}
.es-cid-vazio{color:var(--es-sub)}

.es-abas{display:none}
.es-js .es-abas{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 14px}
.es-aba{border:1px solid var(--es-borda);background:#fff;color:var(--es-txt);border-radius:20px;padding:9px 14px;font:inherit;font-weight:700;font-size:.9rem;cursor:pointer;min-height:40px}
.es-aba[aria-selected=true]{background:var(--es-azul);border-color:var(--es-azul);color:#fff}
.es-dest{margin-bottom:22px}
.es-js .es-dest{display:none}
.es-js .es-dest.ativa{display:block}
.es-dest-cab{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.es-dest-cab h3{margin:0 0 10px}
.es-js .es-dest-cab h3{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.es-dest-cab a{font-weight:700;text-decoration:none}

.es-passos{list-style:none;counter-reset:p;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));gap:12px}
.es-passos li{counter-increment:p;background:#fff;border:1px solid var(--es-borda);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:6px}
.es-passos li::before{content:counter(p);display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--es-laranja);color:#fff;font-weight:800}
.es-passos b{color:var(--es-azul-esc)}
.es-passos span{color:var(--es-sub);font-size:.93rem}

.es-atend{background:var(--es-papel)}
.es-atend-in{display:grid;gap:20px}
.es-oficial{font-size:.88rem;color:var(--es-sub);margin-top:14px}
.es-grupos{background:#fff;border:1px solid var(--es-borda);border-radius:14px;padding:16px}
.es-grupos h3{margin:0 0 4px}
.es-grupos ul{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.es-grupos li{display:flex;flex-direction:column}
.es-grupos small{color:var(--es-sub)}
.es-grupos a{font-weight:700}

/* páginas de praça (cidade/região): faixa de atendimento e canais */
.pr-faixa{background:#fff;border:1px solid var(--es-borda);border-radius:14px;padding:14px 16px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.pr-faixa p{margin:0}
.pr-canais-lista{display:flex;flex-wrap:wrap;gap:8px}
.pr-canais-lista a{display:inline-flex;align-items:center;min-height:40px;padding:6px 12px;border:1px solid var(--es-borda);border-radius:20px;text-decoration:none;font-weight:700;font-size:.88rem;background:#FAF8F6}
.pr-trilha{font-size:.85rem;color:var(--es-sub);margin:0 0 6px}.pr-trilha a{color:inherit}

@media (min-width:900px){
  .es-hero{padding:56px 0 50px}
  .es-hero-in{grid-template-columns:1.55fr 1fr;align-items:center;gap:40px}
  .es-numeros dd{font-size:2rem}
  .es-atend-in{grid-template-columns:1.3fr 1fr;align-items:start}
}
.es-atend .btn-whats,.pr-faixa .btn-whats{color:#fff!important}
.hero .pr-trilha-hero,.hero .pr-trilha-hero a{color:#fff;opacity:.9}
.pr-canais-lista a.btn-whats{background:#1fa855;border-color:#1fa855;color:#fff!important}

/* carrossel de destaques (11/11/2026): deslizar no celular, setas no computador; sem rolagem lateral da página */
.es-carrossel{position:relative}
.es-car-trilho{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,calc((100% - 3*16px)/4));gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:4px 2px 14px;scrollbar-width:thin;overscroll-behavior-x:contain}
.es-car-trilho>*{scroll-snap-align:start;min-width:0}
.es-car-trilho:focus-visible{outline:3px solid var(--es-ciano);outline-offset:3px;border-radius:12px}
.es-car-seta{display:none;position:absolute;top:38%;z-index:2;width:44px;height:44px;border-radius:50%;border:1px solid var(--es-borda);background:#fff;color:var(--es-azul);font-size:28px;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(10,40,80,.15)}
.es-car-seta:hover{background:#F3F8FD}
.es-car-seta[disabled]{opacity:.35;cursor:default}
.es-car-ant{left:-14px}.es-car-prox{right:-14px}
@media (min-width:900px){.es-js .es-car-seta{display:flex;align-items:center;justify-content:center}}
@media (max-width:1100px){.es-car-trilho{grid-auto-columns:minmax(250px,calc((100% - 2*16px)/3))}}
@media (max-width:760px){.es-car-trilho{grid-auto-columns:82%;gap:12px}}

/* revista do estado em destaque */
.rv-est{background:var(--es-papel)}
.rv-est-in{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:center}
.rv-est-in>*{min-width:0}
@media (min-width:760px){.rv-est-in{grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:34px}}
.rv-est-capa{display:block;max-width:min(240px,48vw);margin:0 auto;transform:rotate(-2deg);transition:transform .2s}
.rv-est-capa:hover{transform:rotate(0)}
.rv-est-capa img{display:block;width:100%;height:auto;border-radius:6px;box-shadow:0 14px 34px rgba(10,40,80,.28)}
.rv-est-selo{margin:0 0 6px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:var(--es-laranja)}
.rv-est h2{margin:0 0 8px;color:var(--es-azul-esc);font-size:clamp(1.35rem,4vw,1.9rem);line-height:1.15}
.rv-est-sub{margin:0 0 16px;color:var(--es-sub);max-width:42em}
.rv-est-botoes{display:flex;flex-wrap:wrap;gap:10px}
.rv-est-botoes .btn{display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:52px;padding:8px 18px;line-height:1.2}
.rv-est-botoes .btn small{font-weight:500;font-size:.78rem;opacity:.85}
.rv-est-botoes .btn-prim{background:var(--es-laranja);border-color:var(--es-laranja);color:#fff}
.rv-est-regiao{margin-top:16px;max-width:520px}
.rv-est-regiao label{display:block;font-weight:700;font-size:.9rem;margin-bottom:6px}
.rv-est-linha{display:flex;gap:8px}
.rv-est-linha select{flex:1;min-width:0;min-height:46px;border:1px solid #D5DDE6;border-radius:12px;padding:0 12px;font:inherit;background:#fff}
.rv-est-linha .btn{min-height:46px}
.rv-est-mais{margin:14px 0 0}
.rv-est-mais a{font-weight:700;text-decoration:none}
@media (max-width:560px){.rv-est-botoes .btn{flex:1 1 100%}}
/* página municipal (11/11/2026): bairros com quantidades + atalho para o mapa da cidade */
.cm-explorar-in{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
@media (min-width:900px){.cm-explorar-in{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start}}
.cm-bairros h2{margin:0 0 12px}
.cm-bairros ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:8px}
.cm-bairros li a{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border:1px solid var(--es-borda);border-radius:12px;background:#fff;text-decoration:none;color:var(--es-txt)}
.cm-bairros li a:hover{border-color:var(--es-azul);background:#F3F8FD}
.cm-bairros li a span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cm-bairros b{flex:none;font-size:.8rem;background:#EEF5FB;color:var(--es-azul-esc);border-radius:999px;padding:2px 9px}
.cm-mapa{display:flex;flex-direction:column;gap:6px;padding:20px;border-radius:16px;text-decoration:none;color:#fff;background:linear-gradient(135deg,var(--es-azul-esc),var(--es-ciano));min-height:150px;justify-content:flex-end}
.cm-mapa b{font-size:1.15rem;color:#fff}
.cm-mapa small{color:#fff;opacity:.92}
.cm-mapa-ico{display:inline-flex;width:48px;height:48px;border-radius:12px;background:rgba(255,255,255,.18);align-items:center;justify-content:center;margin-bottom:auto}
.cm-mapa:hover{filter:brightness(1.06)}
/* título só para leitores de tela (11/11/2026) */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
