/* Caribusiness.it — page styles: Contatti */

.contact-hero { padding: 40px 0 8px; }
.contact-hero p { color: var(--c-text-soft); max-width: 640px; }

.dept-grid {
  display: grid;
  gap: 20px;
  margin: 8px 0 8px;
}
.dept-card {
  border: 1px solid var(--c-border);
  border-radius: var(--radius);
  padding: 22px;
  background: #fff;
}
.dept-card h3 {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  font-size: 1.05rem;
}
.dept-card p { margin: 0 0 8px; font-size: .95rem; color: var(--c-text-soft); }
.dept-card a { font-weight: 600; word-break: break-all; }
@media (min-width: 768px) {
  .dept-grid { grid-template-columns: repeat(3, 1fr); }
}

.contact-columns {
  display: grid;
  gap: 32px;
  align-items: start;
}
@media (min-width: 768px) {
  .contact-columns { grid-template-columns: 58% 1fr; }
  .info-panel { position: sticky; top: 84px; }
}

.contact-form {
  border: 1px solid var(--c-border);
  border-radius: var(--radius);
  padding: 26px;
  background: #fff;
}
.contact-form h2 { margin-bottom: 16px; font-size: 1.3rem; }
.consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: .9rem;
  color: var(--c-text-soft);
  margin-bottom: 18px;
}
.consent input { width: auto; margin: 4px 0 0; }
.consent label { font-weight: 400; margin: 0; display: inline; }

.info-panel .info-block {
  border: 1px solid var(--c-border);
  border-radius: var(--radius);
  padding: 22px;
  background: var(--c-tint);
  margin-bottom: 20px;
}
.info-panel h2 { font-size: 1.15rem; margin-bottom: 10px; display: flex; align-items: center; gap: 10px; }
.info-panel p { margin: 0 0 6px; font-size: .95rem; }
.info-panel .muted { color: var(--c-text-soft); }

.hours-table { width: 100%; min-width: 0; font-size: .95rem; }
.hours-table td { padding: 8px 0; border-bottom: 1px solid var(--c-border); }
.hours-table tr:last-child td { border-bottom: none; }

.map-section { padding-top: 0; }
.map-wrap {
  border: 1px solid var(--c-border);
  border-radius: var(--radius);
  overflow: hidden;
}
.map-wrap iframe { display: block; width: 100%; height: 380px; border: 0; }

.mini-faq { padding-top: 0; }
.mini-faq h2 { margin-bottom: 8px; }
