.contact-info { display:flex; flex-direction:column; gap:20px; }
.quick-actions { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:4px; }
.quick-btn {
  display:flex; align-items:center; justify-content:center; gap:8px;
  padding:14px; border-radius:14px; font-size:14px; font-weight:700;
  text-decoration:none; transition:all .3s; border:none; cursor:pointer; font-family:inherit;
}
.quick-btn.call { background:var(--grad-main); color:#fff; box-shadow:0 4px 16px rgba(5,150,105,.3); }
.quick-btn.call:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(5,150,105,.4); }
.quick-btn.whatsapp { background:#25D366; color:#fff; box-shadow:0 4px 16px rgba(37,211,102,.3); }
.quick-btn.whatsapp:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(37,211,102,.4); }

/* Two-number display */
.phone-nums { display:flex; flex-direction:column; gap:4px; }
.phone-num-item { display:flex; align-items:center; gap:8px; }
.phone-num-item a { font-size:15px; font-weight:700; color:var(--green-primary); text-decoration:none; }
.phone-num-item a:hover { text-decoration:underline; }

.hours-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:8px; }
.hours-item { background:rgba(5,150,105,.06); border-radius:10px; padding:10px 14px; }
.hours-day  { font-size:12px; font-weight:700; color:var(--green-forest); }
.hours-time { font-size:13px; color:var(--charcoal); }

.why-contact { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.wc-card { background:var(--gray-light); border:1px solid var(--gray-border); border-radius:var(--radius); padding:28px 20px; text-align:center; transition:all .3s; }
.wc-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-sm); border-color:rgba(5,150,105,.25); }
.wc-icon  { font-size:36px; margin-bottom:12px; display:block; }
.wc-card h4 { font-size:14px; font-weight:700; color:var(--charcoal); margin-bottom:6px; }
.wc-card p  { font-size:13px; color:var(--gray-dark); line-height:1.6; }

/* Contact Form 7 */
.wpcf7-form-control-wrap { display:contents; }
.wpcf7-not-valid-tip { display:block; font-size:12px; color:#dc2626; margin-top:4px; font-weight:500; }
.wpcf7-response-output {
  display:block; border-radius:12px; padding:16px; text-align:center;
  font-weight:600; font-size:14px; margin-top:16px; border:1px solid transparent;
}
.wpcf7-form.sent .wpcf7-response-output { background:var(--green-mint); border-color:rgba(5,150,105,.3); color:var(--green-mid); }
.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7-form.failed .wpcf7-response-output,
.wpcf7-form.spam .wpcf7-response-output { background:#fef2f2; border-color:#fecaca; color:#dc2626; }
.wpcf7-form button.btn-primary { width:100%; justify-content:center; margin-top:20px; border:none; cursor:pointer; }
.wpcf7-spinner { margin:8px auto 0; }

@media (max-width:768px) {
  .why-contact { grid-template-columns:1fr; }
  .hours-grid  { grid-template-columns:1fr; }
  .quick-actions { grid-template-columns:1fr; }
  .contact-card { flex-direction:column; align-items:flex-start; }
  .contact-card .cc-icon { margin-bottom:12px; }
  .map-placeholder { min-height:220px; padding:24px; }
  .contact-form-wrap { padding:28px 20px; }
}
