/* CSS específico — Contato e agendamento */
.contact-hero { padding: clamp(60px, 8vw, 100px) 0 clamp(40px, 5vw, 64px); }

  .contact-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 56px;
  }
  @media (max-width: 920px) { .contact-grid { grid-template-columns: 1fr; gap: 40px; } }

  .contact-form {
    padding: 48px;
    background: var(--ink-2);
    border: 1px solid var(--ink-3);
    border-radius: var(--r-lg);
  }
  .contact-form label {
    display: block;
    font-family: var(--font-mono); font-size: 11px;
    letter-spacing: 0.08em; text-transform: uppercase;
    color: var(--gold); margin-bottom: 8px;
  }
  .contact-form input, .contact-form select, .contact-form textarea {
    width: 100%; padding: 14px 16px;
    background: var(--ink); border: 1px solid var(--ink-3);
    border-radius: var(--r-sm);
    color: var(--cream); font-family: var(--font-sans); font-size: 14px;
    transition: border-color .2s;
  }
  .contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus {
    outline: none; border-color: var(--gold);
  }
  .form-row { display: flex; flex-direction: column; gap: 0; margin-bottom: 20px; }
  .form-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
  @media (max-width: 540px) { .form-cols { grid-template-columns: 1fr; } .contact-form { padding: 32px; } }

  .contact-info { display: flex; flex-direction: column; gap: 24px; }
  .ci-card {
    padding: 32px;
    background: var(--ink-2);
    border: 1px solid var(--ink-3);
    border-radius: var(--r-md);
  }
  .ci-card .l {
    font-family: var(--font-mono); font-size: 11px;
    letter-spacing: 0.12em; text-transform: uppercase;
    color: var(--gold); margin-bottom: 14px;
  }
  .ci-card h4 { font-family: var(--font-display); font-size: 26px; color: var(--cream); margin-bottom: 12px; }
  .ci-card p { color: var(--muted-on-dark); font-size: 14px; line-height: 1.6; }
  .ci-card a { color: var(--cream); border-bottom: 1px solid var(--line); transition: color .2s, border-color .2s; }
  .ci-card a:hover { color: var(--gold); border-color: var(--gold); }

  .wa-cta {
    display: flex; align-items: center; gap: 16px;
    padding: 18px 24px;
    background: linear-gradient(135deg, #25D366, #128C7E);
    color: white;
    border-radius: var(--r-md);
    font-weight: 600; font-size: 15px;
    margin-top: 8px;
    transition: transform .2s;
  }
  .wa-cta:hover { transform: translateY(-2px); }
  .wa-cta svg { width: 24px; height: 24px; flex-shrink: 0; }

  .map-strip {
    aspect-ratio: 21/9;
    min-height: 360px;
    border-radius: 0;
  }

  .hours-table {
    margin-top: 16px;
    width: 100%;
    border-collapse: collapse;
  }
  .hours-table tr { border-top: 1px solid var(--ink-3); }
  .hours-table tr:first-child { border-top: 0; }
  .hours-table td { padding: 10px 0; font-size: 13px; color: var(--cream); }
  .hours-table td:last-child { text-align: right; color: var(--muted-on-dark); font-family: var(--font-mono); }
