/* ==========================================================================
   Benefacto — estilos da pagina de localidade (template page-localidade.php)
   Reaproveita tokens do tema (--c-azul, --c-verde, --c-areia, etc.).
   Carregado so quando o template Localidade esta ativo.
   ========================================================================== */

/* Grade de beneficios */
.loc-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  margin-top:8px;
}
.loc-card{
  background:#fff;
  border:1px solid var(--c-cinza-areia,#D9D5CC);
  border-left:4px solid var(--c-verde,#2A9D8F);
  border-radius:12px;
  padding:24px;
}
.loc-card-ic{
  display:inline-grid;
  place-items:center;
  width:44px;height:44px;
  border-radius:10px;
  background:rgba(42,157,143,.12);
  color:var(--c-verde,#2A9D8F);
  margin-bottom:12px;
}
.loc-card h3{
  font-family:'Lora',Georgia,serif;
  color:var(--c-azul,#13315C);
  font-size:1.15rem;
  margin:0 0 6px;
}
.loc-card p{
  margin:0;
  color:var(--c-cinza,#646B78);
  font-size:.96rem;
  line-height:1.55;
}

/* Contexto local (2 colunas) */
.loc-context-grid{
  display:grid;
  grid-template-columns:1.5fr 1fr;
  gap:42px;
  align-items:start;
}
.loc-context-text h2{
  font-family:'Lora',Georgia,serif;
  color:var(--c-azul,#13315C);
  font-size:1.7rem;
  margin:0 0 16px;
}
.loc-context-text .btn{margin-top:10px;}

/* O CTA fica dentro de .article-body, cujo estilo de link (azul + sublinhado)
   sobrescreveria o botao. Estes overrides tem especificidade maior e restauram
   o visual de botao (sem sublinhado, cor correta) no estado normal e no hover. */
.loc-context-text.article-body a.btn,
.loc-context-text.article-body a.btn:hover,
.loc-context-text.article-body a.btn:focus{
  text-decoration:none;
  color:#06302B;
}
.loc-context-text.article-body a.btn--accent:hover,
.loc-context-text.article-body a.btn--accent:focus{
  color:#fff;
}
.loc-context-side{
  position:sticky;
  top:96px;
}
.loc-fact{
  background:var(--c-areia,#F4F1EC);
  border:1px solid var(--c-cinza-areia,#D9D5CC);
  border-radius:14px;
  padding:22px;
  margin-bottom:16px;
}
.loc-fact-ic{
  display:inline-grid;place-items:center;
  width:40px;height:40px;border-radius:10px;
  background:#fff;color:var(--c-verde,#2A9D8F);
  margin-bottom:10px;
}
.loc-fact b{
  display:block;
  font-family:'Lora',Georgia,serif;
  color:var(--c-azul,#13315C);
  font-size:1.1rem;margin-bottom:6px;
}
.loc-fact p{margin:0;color:var(--c-cinza,#646B78);font-size:.95rem;}
.loc-checklist{list-style:none;margin:0;padding:0;}
.loc-checklist li{
  position:relative;
  padding:9px 0 9px 30px;
  border-bottom:1px solid var(--c-cinza-areia,#D9D5CC);
  font-size:.96rem;color:var(--c-grafite,#2D2D2D);
}
.loc-checklist li:last-child{border-bottom:0;}
.loc-checklist li::before{
  content:"";
  position:absolute;left:0;top:12px;
  width:18px;height:18px;border-radius:50%;
  background:rgba(42,157,143,.15)
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%232A9D8F'%3E%3Cpath d='M9 16.2l-3.5-3.5L4 14.2 9 19 20 8l-1.5-1.5z'/%3E%3C/svg%3E")
    no-repeat center / 13px;
}

/* Passos (sobre faixa azul) */
.loc-steps-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px;
}
.loc-step{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
  border-left:4px solid var(--c-verde,#2A9D8F);
  border-radius:12px;padding:26px;
}
.loc-step .n{
  font-family:'Lora',Georgia,serif;
  font-size:2rem;color:var(--c-verde,#2A9D8F);line-height:1;
}
.loc-step h3{color:#fff;font-size:1.12rem;margin:12px 0 6px;font-family:'Lora',Georgia,serif;}
.loc-step p{color:#cdd9ec;font-size:.95rem;margin:0;}

/* Disclaimer (nota centrada, padrão do single.php) */
.loc-disclaimer-wrap{max-width:820px;margin:0 auto;}

/* FAQ */
.loc-faq-wrap{max-width:820px;margin:0 auto;}
.loc-faq details{
  background:#fff;
  border:1px solid var(--c-cinza-areia,#D9D5CC);
  border-radius:10px;margin-bottom:12px;overflow:hidden;
}
.loc-faq summary{
  padding:18px 22px;cursor:pointer;list-style:none;
  font-weight:600;color:var(--c-azul,#13315C);font-size:1.05rem;
  display:flex;justify-content:space-between;align-items:center;gap:14px;
}
.loc-faq summary::-webkit-details-marker{display:none;}
.loc-faq summary::after{content:"+";font-size:1.4rem;color:var(--c-verde,#2A9D8F);font-weight:400;}
.loc-faq details[open] summary::after{content:"\2013";}
.loc-faq-a{padding:0 22px 20px;color:var(--c-cinza,#646B78);font-size:1rem;line-height:1.6;}

/* Responsivo */
@media (max-width:980px){
  .loc-grid,.loc-steps-grid{grid-template-columns:1fr 1fr;}
  .loc-context-grid{grid-template-columns:1fr;gap:28px;}
  .loc-context-side{position:static;}
}
@media (max-width:600px){
  .loc-grid,.loc-steps-grid{grid-template-columns:1fr;}
}
