/* ============================================================
   MASTER INTERNET – viabilidade.css
   Busca de viabilidade por CEP (/viabilidade) — igual à base de
   /lojas, mas sem a parte de lojas.
   ============================================================ */

.lojas-hero { text-align: center; padding: 48px 28px 80px; }
.lojas-hero h1 { font-size: clamp(28px, 4vw, 40px); font-weight: 900; color: var(--gray-900); margin-bottom: 10px; }
.lojas-hero p { font-size: 16px; color: var(--gray-500); max-width: 560px; margin: 0 auto; }

.cep-search-box {
  max-width: 480px;
  margin: 32px auto 80px;
  padding: 28px;
  background: var(--gray-50);
  border-radius: var(--r-lg);
  text-align: center;
}
.cep-search-box label { display: block; font-size: 13px; font-weight: 700; color: var(--gray-700); margin-bottom: 10px; }
.cep-search-row { display: flex; gap: 10px; }
.cep-search-row input {
  flex: 1;
  border: 1.5px solid var(--gray-200);
  border-radius: var(--r-sm);
  padding: 13px 16px;
  font-size: 16px;
  font-family: inherit;
}
.cep-search-row button {
  border: none;
  background: var(--blue);
  color: #fff;
  font-weight: 800;
  padding: 13px 22px;
  border-radius: var(--r-sm);
  cursor: pointer;
  transition: background var(--dur) var(--ease);
}
.cep-search-row button:hover { background: var(--blue-dk); }
.cep-search-row button:disabled { opacity: .6; cursor: default; }

.cep-result { margin-top: 20px; text-align: left; }
.cep-result-ok, .cep-result-no {
  padding: 18px 20px;
  border-radius: var(--r-md);
  font-size: 14.5px;
  line-height: 1.6;
}
.cep-result-ok { background: #e8f9ee; border: 1.5px solid #b7ebc6; color: #14532d; }
.cep-result-no { background: #fff4e5; border: 1.5px solid #fde3b8; color: #7c4a03; }
.cep-result-ok strong, .cep-result-no strong { display: block; margin-bottom: 6px; font-size: 15.5px; }
.cep-result-actions { margin-top: 12px; display: flex; gap: 10px; flex-wrap: wrap; }

@media (max-width: 560px) {
  .cep-search-row { flex-direction: column; }
}
