/* contacts: компоненты страницы (разделено из reviews.css) */

/* ===== contacts: контакты ===== */
/* ---------- контакты (стиль videntis: карточка + карта рядом) ---------- */

.rv-contacts-page { padding-top: 28px; }

.rv-breadcrumbs--dark a { color: var(--rv-muted); }

.rv-breadcrumbs--dark a:hover { color: var(--rv-ink); }

.rv-breadcrumbs--dark span,
.rv-breadcrumbs--dark b { color: var(--rv-ink); }

.rv-page-title {
  margin: 16px 0 8px;
  font-size: clamp(30px, 4vw, 42px);
  line-height: 1.12;
  font-weight: 700;
  color: var(--rv-ink);
}

.rv-contacts-row {
  display: grid;
  grid-template-columns: 380px minmax(0, 1fr);
  gap: 20px;
  align-items: stretch;
  margin-top: 28px;
}

.rv-contacts-card {
  display: flex;
  flex-direction: column;
  gap: 22px;
  padding: 30px;
  background: #fff;
  border-radius: var(--radius-5);
  box-shadow: 0 10px 30px rgba(3, 34, 67, .1);
}

.rv-crow__label {
  display: block;
  margin-bottom: 6px;
  font-size: var(--fs-14);
  font-weight: 500;
  color: var(--rv-blue);
}

.rv-crow__value {
  font-size: var(--fs-17);
  line-height: 1.55;
  color: var(--rv-ink);
}

.rv-crow__value a {
  color: inherit;
  text-decoration: none;
  transition: color .15s ease;
}

.rv-crow__value a:hover { color: var(--rv-blue); }

.rv-crow__value--phones { display: flex; flex-direction: column; gap: 4px; }

.rv-crow__value--phones a {
  font-size: var(--fs-20);
  font-weight: 600;
  width: fit-content;
}

.rv-crow__value--phones small {
  font-size: var(--fs-13);
  font-weight: 400;
  color: var(--rv-muted);
}

.rv-map {
  border-radius: var(--radius-5);
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(3, 34, 67, .1);
  background: #fff;
}

.rv-map iframe { display: block; width: 100%; border: 0; }

.rv-map--side { height: fit-content; }

@media (max-width: 900px) {
  .rv-contacts-row { grid-template-columns: 1fr; }
  .rv-map--side { min-height: 420px; }
  .rv-contacts-card { padding: 24px 20px; }
}
