/* CAME — teléfonos y domicilio de atención, prueba 7. */
.came-contact-card {
  margin: 22px 0;
  padding: 28px;
  background: #fff;
  border: 1px solid #e1e4e9;
  border-top: 3px solid #e30613;
  border-radius: 16px;
  box-shadow: 0 6px 22px rgb(25 32 42 / 6%);
  color: #333b46;
}
.came-contact-card *, .came-contact-card *::before, .came-contact-card *::after { box-sizing: border-box; }
.came-contact-heading { display: flex; align-items: center; gap: 14px; margin-bottom: 22px; }
.came-contact-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: #fff0f1;
  color: #bd0010;
}
.came-phone-symbol { display: block; width: 22px; height: 22px; flex-shrink: 0; }
.came-contact-card .came-contact-title {
  margin: 0;
  padding: 0;
  color: #333b46;
  font: 600 1.75rem/1.3 'Jost', Arial, sans-serif;
}
.came-contact-card .came-contact-intro { margin: 7px 0 0; color: #626873; font-size: .94rem; line-height: 1.55; }
.came-phone-list { display: grid; gap: 12px; }
.came-contact-card .came-phone-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  min-height: 70px;
  padding: 14px 16px;
  background: #f8f9fb;
  border: 1px solid #dce1e7;
  border-radius: 10px;
  color: #333b46;
  text-decoration: none;
  transition: background-color .15s ease, border-color .15s ease;
}
.came-contact-card .came-phone-row:hover { background: #fff4f4; border-color: #e30613; text-decoration: none; color: #333b46; }
.came-phone-number { font: 700 clamp(1.3rem, 1.8vw, 1.65rem)/1.3 'Jost', Arial, sans-serif; font-variant-numeric: tabular-nums; white-space: nowrap; }
.came-phone-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 8px 11px;
  border-radius: 7px;
  background: #e30613;
  color: #fff;
  font: 600 14px/20px 'Jost', Arial, sans-serif;
}
.came-phone-action .came-phone-symbol { width: 16px; height: 16px; }
.came-contact-card .came-contact-hint { margin: 12px 0 0; color: #626873; font-size: .88rem; line-height: 1.5; }
.came-contact-location { margin-top: 24px; padding-top: 22px; border-top: 1px solid #e5e7eb; }
.came-contact-location-heading { display: flex; align-items: center; gap: 9px; margin-bottom: 10px; }
.came-contact-location-heading > svg { width: 20px; height: 20px; color: #bd0010; flex-shrink: 0; }
.came-contact-card .came-contact-location-title { margin: 0; color: #333b46; font: 600 1.2rem/1.4 'Jost', Arial, sans-serif; }
.came-contact-card .came-contact-address { margin: 0; color: #4d5560; font-size: 1rem; line-height: 1.7; font-style: normal; }
.came-contact-card .came-contact-more { margin-top: 22px; }
.came-footer-phones { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; margin-bottom: 16px; }
.came-footer .came-phone-compact {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 10px 14px;
  background: #fff;
  border: 1px solid #dce1e7;
  border-radius: 8px;
  color: #333b46;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.came-footer .came-phone-compact .came-phone-symbol { width: 18px; height: 18px; color: #bd0010; }
.came-footer .came-phone-compact:hover { border-color: #e30613; background: #fff4f4; color: #bd0010; text-decoration: none; }
.came-phone-row:focus-visible, .came-footer .came-phone-compact:focus-visible { outline: 3px solid #492f7b; outline-offset: 3px; }
@media (max-width: 575.98px) {
  .came-contact-card { padding: 22px 18px; }
  .came-contact-heading { align-items: flex-start; gap: 11px; }
  .came-contact-card .came-contact-title { font-size: 1.5rem; }
  .came-contact-icon { width: 40px; height: 40px; border-radius: 10px; }
  .came-contact-card .came-phone-row { padding: 12px; gap: 8px; }
  .came-phone-number { font-size: 1.25rem; }
  .came-phone-action { padding: 7px 9px; gap: 5px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) { .came-contact-card .came-phone-row { transition: none; } }
