/* Encontre Seu Eletricista — estilos do diretório (funciona com qualquer tema). */
:root{
  --ese-amarelo:#FFC21A; --ese-amarelo-2:#FFB000; --ese-azul:#0F1B2D; --ese-azul-2:#1A2A42;
  --ese-confianca:#1F4FD8; --ese-verde:#15803D; --ese-verde-2:#116632;
  --ese-cinza:#4A5568; --ese-cinza-claro:#A9B4C4; --ese-linha:#DDE1E7; --ese-fundo:#F5F6F8; --ese-branco:#fff;
  --ese-titulo:'Archivo','Arial Black',system-ui,sans-serif; --ese-texto:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --ese-raio:14px;
}
.ese-main{background:var(--ese-fundo);color:var(--ese-azul);font-family:var(--ese-texto);padding-bottom:64px}
.ese-wrap{max-width:1200px;margin:0 auto;padding:0 16px}
.ese-ic{flex:none;vertical-align:-.15em}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* hero */
.ese-hero{background:var(--ese-azul);color:#fff;padding:28px 0 32px;margin-bottom:28px}
.ese-hero__titulo{font-family:var(--ese-titulo);font-weight:900;font-size:clamp(28px,4.4vw,46px);line-height:1.05;letter-spacing:-.02em;margin:10px 0 8px;color:#fff}
.ese-hero__sub{color:var(--ese-cinza-claro);margin:0 0 20px;font-size:16px;max-width:70ch}
.ese-migalhas{font-size:13px;color:var(--ese-cinza-claro);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ese-migalhas a{color:var(--ese-cinza-claro);text-decoration:none}
.ese-migalhas a:hover{color:var(--ese-amarelo)}
.ese-migalhas [aria-current]{color:#fff}
.ese-sep{opacity:.5}

/* busca */
.ese-busca{background:var(--ese-azul);border-radius:var(--ese-raio);padding:20px;color:#fff}
.ese-hero .ese-busca{padding:0;background:none}
.ese-busca__titulo{font-family:var(--ese-titulo);font-weight:900;font-size:22px;margin:0 0 14px}
.ese-busca__campos{display:grid;grid-template-columns:130px minmax(0,1.3fr) minmax(0,1fr) auto;gap:10px;align-items:end}
.ese-campo label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:#fff}
.ese-campo label span{font-weight:400;color:var(--ese-cinza-claro)}
.ese-campo select,.ese-campo input{width:100%;height:52px;border:2px solid transparent;border-radius:10px;padding:0 14px;font:16px var(--ese-texto);background:#fff;color:var(--ese-azul);box-sizing:border-box}
.ese-campo select:focus,.ese-campo input:focus{outline:none;border-color:var(--ese-amarelo)}
.ese-busca__gps{margin-top:12px;background:none;border:0;color:var(--ese-amarelo);font:600 14px var(--ese-texto);cursor:pointer;display:inline-flex;gap:6px;align-items:center;padding:6px 0;min-height:44px}
.ese-busca__gps:hover{text-decoration:underline}
.ese-busca__aviso{margin:4px 0 0;font-size:14px;color:var(--ese-amarelo);min-height:1em}
@media (max-width:860px){.ese-busca__campos{grid-template-columns:110px 1fr}.ese-campo--bairro{grid-column:1/-1}.ese-busca__campos .ese-btn{grid-column:1/-1}}

/* botões */
.ese-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:10px;border:2px solid transparent;font:700 15px var(--ese-texto);text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s;box-sizing:border-box;white-space:nowrap}
.ese-btn--primario{background:var(--ese-amarelo);color:var(--ese-azul);font-family:var(--ese-titulo);font-weight:900;height:52px;padding:0 24px}
.ese-btn--primario:hover{background:var(--ese-amarelo-2);color:var(--ese-azul)}
.ese-btn--zap{background:var(--ese-verde);color:#fff}
.ese-btn--zap:hover{background:var(--ese-verde-2);color:#fff}
.ese-btn--linha{background:#fff;color:var(--ese-azul);border-color:var(--ese-linha)}
.ese-btn--linha:hover{border-color:var(--ese-azul);color:var(--ese-azul)}
.ese-btn--grande{min-height:54px;font-size:17px;padding:0 22px}
.ese-btn--bloco{display:flex;width:100%}
.ese-btn:focus-visible,.ese-card a:focus-visible{outline:3px solid var(--ese-confianca);outline-offset:2px}

/* layout */
.ese-colunas{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}
.ese-principal{flex:999 1 620px;min-width:0}
.ese-lateral{flex:1 1 290px;display:flex;flex-direction:column;gap:18px}
.ese-secao{margin-bottom:34px}
.ese-secao__titulo{font-family:var(--ese-titulo);font-weight:900;font-size:24px;letter-spacing:-.01em;margin:0 0 14px;color:var(--ese-azul)}
.ese-secao__nota{color:var(--ese-cinza);margin:-6px 0 14px;font-size:14px}
.ese-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px}
.ese-grade__largo{grid-column:1/-1}
.ese-link-forte{font-weight:700;color:var(--ese-confianca);text-decoration:none}
.ese-link-forte:hover{text-decoration:underline}

/* cartão */
.ese-card{position:relative;background:#fff;border:1px solid var(--ese-linha);border-radius:var(--ese-raio);padding:18px;display:flex;flex-direction:column;gap:12px}
.ese-card--destaque{border:2px solid var(--ese-amarelo);box-shadow:0 6px 18px rgba(15,27,45,.08)}
.ese-card--destaque > .ese-selo--destaque{position:absolute;top:-12px;left:16px}
.ese-card__nome{font-family:var(--ese-titulo);font-weight:800;font-size:19px;line-height:1.2;margin:0 0 8px}
.ese-card__nome a{color:var(--ese-azul);text-decoration:none}
.ese-card__nome a:hover{color:var(--ese-confianca)}
.ese-card__selos{display:flex;flex-wrap:wrap;gap:6px}
.ese-selo{display:inline-flex;align-items:center;gap:4px;font:600 12px var(--ese-texto);padding:3px 9px;border-radius:20px;background:#E8F3EC;color:#0F5A2B}
.ese-selo--destaque{background:var(--ese-amarelo);color:var(--ese-azul)}
.ese-selo--verificado{background:#E6ECFB;color:#173CA6}
.ese-selo--neutro{background:var(--ese-fundo);color:var(--ese-cinza)}
.ese-card__info{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;color:var(--ese-cinza);font-size:14px}
.ese-card__info li{display:flex;gap:6px;align-items:flex-start}
.ese-card__desc{margin:0;font-size:14px;color:var(--ese-azul)}
.ese-card__acoes{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:auto}
.ese-card__perfil{margin-left:auto;font-size:14px;font-weight:600;color:var(--ese-confianca);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}

/* caixas laterais */
.ese-caixa{background:#fff;border:1px solid var(--ese-linha);border-radius:var(--ese-raio);padding:18px}
.ese-caixa__titulo{font-family:var(--ese-titulo);font-weight:900;font-size:18px;margin:0 0 8px}
.ese-caixa--cta{background:var(--ese-azul);border-color:var(--ese-azul);color:#fff}
.ese-caixa--cta p{color:#D5DCE6}
.ese-caixa--cta .ese-caixa__titulo{color:var(--ese-amarelo)}
.ese-link-claro{display:block;text-align:center;margin-top:10px;color:#fff;font-size:14px}
.ese-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.ese-chips a{display:inline-flex;gap:6px;align-items:center;padding:6px 11px;border:1px solid var(--ese-linha);border-radius:20px;font-size:13px;color:var(--ese-azul);text-decoration:none;background:#fff}
.ese-chips a span{color:var(--ese-cinza);font-size:12px}
.ese-chips a:hover,.ese-chips a[aria-current]{border-color:var(--ese-azul);background:var(--ese-azul);color:#fff}
.ese-chips a:hover span,.ese-chips a[aria-current] span{color:var(--ese-cinza-claro)}
.ese-chips--grandes a{padding:10px 14px;font-size:15px;font-weight:600}
.ese-lista-simples{list-style:none;margin:0;padding:0;columns:2;gap:16px;font-size:14px}
.ese-lista-simples li{break-inside:avoid;padding:3px 0}
.ese-lista-simples a{color:var(--ese-azul)}
.ese-lista-simples span{color:var(--ese-cinza);font-size:12px}

/* estados */
.ese-estados{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.ese-estados a{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;background:#fff;border:1px solid var(--ese-linha);border-radius:12px;padding:12px;text-decoration:none;color:var(--ese-azul)}
.ese-estados a:hover{border-color:var(--ese-azul)}
.ese-estados__uf{grid-row:1/3;width:48px;height:48px;border-radius:10px;background:var(--ese-azul);color:var(--ese-amarelo);font:900 18px var(--ese-titulo);display:flex;align-items:center;justify-content:center}
.ese-estados__nome{font-weight:700}
.ese-estados__n{font-size:13px;color:var(--ese-cinza)}

/* perfil */
.ese-perfil{background:#fff;border:1px solid var(--ese-linha);border-radius:var(--ese-raio);padding:26px;margin-bottom:30px}
.ese-perfil--destaque{border:2px solid var(--ese-amarelo)}
.ese-perfil__topo{display:flex;gap:18px;align-items:flex-start;margin-bottom:20px}
.ese-perfil__marca{flex:none;width:72px;height:72px;border-radius:16px;background:var(--ese-azul);color:var(--ese-amarelo);font:900 34px var(--ese-titulo);display:flex;align-items:center;justify-content:center}
.ese-perfil__nome{font-family:var(--ese-titulo);font-weight:900;font-size:clamp(24px,3.4vw,34px);line-height:1.1;margin:0 0 4px;color:var(--ese-azul)}
.ese-perfil__sub{margin:0 0 10px;color:var(--ese-cinza)}
.ese-perfil__acoes{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.ese-perfil__desc{border-left:0;background:var(--ese-fundo);border-radius:10px;padding:14px 16px;margin-bottom:20px}
.ese-perfil__desc p{margin:0 0 8px}
.ese-dados{margin:0;display:grid;grid-template-columns:1fr;border-top:1px solid var(--ese-linha)}
.ese-dados > div{display:grid;grid-template-columns:170px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--ese-linha)}
.ese-dados dt{font-weight:600;color:var(--ese-cinza);font-size:14px}
.ese-dados dd{margin:0}
.ese-dados a{color:var(--ese-confianca)}
@media (max-width:600px){.ese-dados > div{grid-template-columns:1fr;gap:2px}}
.ese-email{cursor:pointer;color:var(--ese-confianca);text-decoration:underline}
.ese-perfil__fonte{font-size:13px;color:var(--ese-cinza);margin:16px 0 0}
.ese-perfil__fonte a{color:var(--ese-confianca)}

/* avisos */
.ese-aviso{display:flex;gap:12px;align-items:flex-start;border-radius:12px;padding:16px 18px;margin-bottom:20px;background:#FDF1D6;color:#5C3D00}
.ese-aviso--fechado{background:#FDECEA;color:#7A2018}
.ese-aviso a{color:inherit;font-weight:700;display:block;margin-top:4px}
.ese-vazio{background:#fff;border:1px dashed var(--ese-linha);border-radius:var(--ese-raio);padding:28px;text-align:center;color:var(--ese-cinza)}

/* paginação */
.ese-paginacao{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 30px}
.ese-paginacao .page-numbers{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--ese-linha);border-radius:10px;background:#fff;color:var(--ese-azul);text-decoration:none;font-weight:600}
.ese-paginacao .current{background:var(--ese-azul);color:#fff;border-color:var(--ese-azul)}

/* FAQ */
.ese-faq details{background:#fff;border:1px solid var(--ese-linha);border-radius:12px;padding:0 18px;margin-bottom:8px}
.ese-faq summary{cursor:pointer;font-weight:700;padding:16px 0;min-height:24px}
.ese-faq details p{margin:0 0 16px;color:var(--ese-cinza)}

/* anúncios */
.ese-anuncio{display:block;margin:0 0 24px;text-align:center}
.ese-anuncio img{max-width:100%;height:auto;border-radius:10px;display:inline-block}
.ese-anuncio__rotulo{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ese-cinza);margin-bottom:4px}
.ese-anuncio--vazio{border:2px dashed var(--ese-linha);border-radius:12px;padding:22px;color:var(--ese-cinza);font-size:14px;background:#fff}
.ese-anuncio--vazio a{color:var(--ese-confianca);font-weight:700}

/* formulários do plugin (anunciar / corrigir) */
.ese-form{background:#fff;border:1px solid var(--ese-linha);border-radius:var(--ese-raio);padding:24px;display:flex;flex-direction:column;gap:16px;color:var(--ese-azul);font-family:var(--ese-texto)}
.ese-form label{font-weight:600;font-size:14px;display:block;margin-bottom:6px}
.ese-form input[type=text],.ese-form input[type=email],.ese-form input[type=tel],.ese-form input[type=url],.ese-form select,.ese-form textarea{width:100%;min-height:48px;border:1px solid #C5CCD6;border-radius:10px;padding:10px 14px;font:16px var(--ese-texto);box-sizing:border-box;background:#fff;color:var(--ese-azul)}
.ese-form textarea{min-height:110px}
.ese-form .ese-ajuda{font-size:13px;color:var(--ese-cinza);margin:4px 0 0}
.ese-form fieldset{border:0;margin:0;padding:0}
.ese-form legend{font-weight:700;margin-bottom:8px}
.ese-opcoes{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.ese-opcao{position:relative;display:flex;flex-direction:column;gap:4px;border:2px solid var(--ese-linha);border-radius:12px;padding:14px 14px 14px 44px;cursor:pointer}
.ese-opcao input{position:absolute;left:14px;top:16px;width:20px;height:20px;accent-color:var(--ese-azul)}
.ese-opcao:has(input:checked){border-color:var(--ese-azul);background:#F2F5FA}
.ese-opcao strong{font-size:16px}
.ese-opcao span{font-size:13px;color:var(--ese-cinza)}
.ese-opcao em{font-style:normal;font:900 20px var(--ese-titulo)}
.ese-opcao--esgotado{opacity:.55;cursor:not-allowed}
.ese-msg{border-radius:10px;padding:12px 16px;font-size:14px}
.ese-msg--ok{background:#E8F3EC;color:#0F5A2B}
.ese-msg--erro{background:#FDECEA;color:#7A2018}
.ese-resumo-empresa{background:var(--ese-fundo);border-radius:10px;padding:12px 16px;font-size:14px}
.ese-form .ese-opcao{display:flex;margin:0;font-weight:400}
.ese-form .ese-opcao strong{font-weight:700}
.ese-btn:disabled{opacity:.45;cursor:not-allowed}

.ese-btn--perfil{height:46px;font-size:15px;padding:0 18px}
.ese-card__zap{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600;color:var(--ese-verde)}

.ese-revelar{background:none;border:0;padding:0;font:inherit;color:var(--ese-confianca);cursor:pointer;text-align:left;min-height:32px}
.ese-revelar small,.ese-btn small{font-weight:600;font-size:12px;opacity:.75;text-decoration:underline}

/* vitrine de produtos (anúncios) */
.ese-anuncio .ese-vitrine{position:relative;background:var(--vt-fundo,#16181C);color:#fff;border-radius:14px;padding:24px 18px 18px;text-align:left;font-family:var(--ese-texto)}
.ese-vitrine .ese-anuncio__rotulo{position:absolute;top:6px;right:12px;margin:0;color:rgba(255,255,255,.55);font-size:10px}
.ese-vitrine__cab{display:flex;flex-direction:column;gap:4px}
.ese-vitrine__marca{margin:0;font:700 12px var(--ese-texto);letter-spacing:.12em;text-transform:uppercase;color:var(--vt-dest,#F0A500)}
.ese-vitrine__titulo{margin:0;font:900 22px/1.1 var(--ese-titulo);color:#fff;letter-spacing:-.01em}
.ese-vitrine__texto{margin:2px 0 0;font-size:14px;color:#C9CDD3;line-height:1.4}
.ese-vitrine__cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;margin-top:10px;border-radius:10px;background:var(--vt-dest,#F0A500);color:#16181C!important;font:800 15px var(--ese-texto);text-decoration:none;align-self:flex-start;white-space:nowrap}
.ese-vitrine__cta:hover{filter:brightness(1.08)}
.ese-vitrine__itens{list-style:none;margin:0;padding:0}
.ese-vitrine__itens a{display:flex;text-decoration:none;color:#16181C;background:#fff;border-radius:10px;height:100%}
.ese-vitrine__foto{display:flex;align-items:center;justify-content:center;background:#fff;border-radius:10px;flex:none}
.ese-vitrine__foto img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.ese-vitrine__nome{font:600 13px/1.3 var(--ese-texto);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
/* faixa (espaços 1 e 2) */
.ese-vitrine--faixa{display:grid;grid-template-columns:minmax(220px,1fr) 2.2fr;gap:18px;align-items:center}
.ese-vitrine--faixa .ese-vitrine__itens{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.ese-vitrine--faixa .ese-vitrine__itens a{flex-direction:column;padding:8px;gap:6px}
.ese-vitrine--faixa .ese-vitrine__foto{width:100%;height:86px}
.ese-vitrine--faixa .ese-vitrine__nome{font-size:12px;-webkit-line-clamp:2;min-height:31px}
@media (max-width:760px){
  .ese-vitrine--faixa{grid-template-columns:1fr}
  .ese-vitrine--faixa .ese-vitrine__itens{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ese-vitrine--faixa .ese-vitrine__itens li:nth-child(n+5){display:none}
  .ese-vitrine__titulo{font-size:20px}
}
/* coluna (espaço 3, lateral) */
.ese-vitrine--coluna{display:flex;flex-direction:column;gap:12px}
.ese-vitrine--coluna .ese-vitrine__titulo{font-size:19px}
.ese-vitrine--coluna .ese-vitrine__itens{display:flex;flex-direction:column;gap:8px}
.ese-vitrine--coluna .ese-vitrine__itens a{align-items:center;gap:10px;padding:8px;min-height:84px;flex-wrap:wrap}
.ese-vitrine--coluna .ese-vitrine__foto{width:70px;height:70px}
.ese-vitrine--coluna .ese-vitrine__nome{flex:1;min-width:0}
.ese-vitrine__ver{display:none}
.ese-vitrine--coluna .ese-vitrine__cta{align-self:stretch}
.ese-vitrine a:focus-visible{outline:3px solid var(--vt-dest,#F0A500);outline-offset:2px}
