/* ===== Contato — estilos específicos desta página ===== */

.page-banner {
  padding: 68px 0 40px;
  border-bottom: 1px solid var(--line);
}
.page-banner h1 { max-width: 20ch; font-size: clamp(2rem, 4vw, 2.9rem); }
.page-banner p { font-size: 1.15rem; color: var(--ink-soft); max-width: 56ch; }

.contato-grid {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 72px;
}
@media (max-width: 860px) {
  .contato-grid { grid-template-columns: 1fr; gap: 44px; }
}

.contato-info { display: flex; flex-direction: column; gap: 28px; }
.info-item { padding-bottom: 24px; border-bottom: 1px solid var(--line); }
.info-item h3 { font-size: 1.1rem; color: var(--olive-dark); margin-bottom: 6px; }
.info-item p { margin: 0; color: var(--ink-soft); }
.info-item a { color: var(--ink); text-decoration: underline; text-decoration-color: var(--line); }
.info-note { font-size: var(--fs-small); color: #8A7B62; }
.contato-whatsapp-btn { margin-top: 8px; align-self: flex-start; }

.contato-form {
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 36px;
  display: flex;
  flex-direction: column;
}
.contato-form h3 { margin-bottom: 6px; }
.form-lede { color: var(--ink-soft); font-size: 1rem; margin-bottom: 22px; }
.contato-form label {
  font-size: var(--fs-small);
  color: var(--ink-soft);
  margin-bottom: 6px;
  margin-top: 16px;
  font-weight: 600;
}
.contato-form label:first-of-type { margin-top: 0; }
.contato-form input,
.contato-form textarea {
  font-family: var(--font-body);
  font-size: 1rem;
  padding: 12px 14px;
  border: 1.5px solid var(--line);
  border-radius: var(--radius);
  background: var(--cream);
  color: var(--ink);
  resize: vertical;
}
.contato-form input:focus,
.contato-form textarea:focus {
  border-color: var(--olive);
  outline: none;
}
.contato-form button { margin-top: 24px; align-self: flex-start; }

.mapa p { color: var(--ink-soft); margin-bottom: 24px; }

.mapa iframe {
    width: 100%;
    height: 450px;
    border: 0;
    border-radius: var(--radius);
    box-shadow: 0 8px 25px rgba(43, 36, 25, 0.12);
    margin-top: 8px;
}
