/* Kontaktai */
.contacts { position: relative; z-index: 1; margin-top: 40px; padding-bottom: 80px; }

.contacts__grid {
  display: grid; gap: 16px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.contact-card {
  display: flex; flex-direction: column; align-items: flex-start; gap: 6px;
  padding: 24px; border-radius: 18px;
  background: color-mix(in srgb, var(--card) 85%, transparent);
  border: 1px solid var(--white-10);
  backdrop-filter: blur(10px);
  transition: border-color .2s, transform .2s;
}
.contact-card:hover { border-color: color-mix(in srgb, var(--accent) 55%, transparent); transform: translateY(-2px); }

.contact-card__icon {
  display: grid; place-items: center; width: 44px; height: 44px; margin-bottom: 10px;
  border-radius: 12px; color: var(--accent);
  background: color-mix(in srgb, var(--accent) 12%, transparent);
}
.contact-card__icon svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linejoin: round; stroke-linecap: round; }
.contact-card__icon--fill svg { fill: currentColor; stroke: none; }

.contact-card__label { font-size: 12px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--white-50); }
.contact-card__value { font-size: 17px; font-weight: 600; color: #fff; overflow-wrap: anywhere; }
.contact-card small { font-size: 13px; color: var(--white-60); }

.contacts__legal {
  margin-top: 28px; padding: 28px; border-radius: 18px;
  background: color-mix(in srgb, var(--card) 85%, transparent);
  border: 1px solid var(--white-10);
}
.contacts__legal-title { font-size: 20px; font-weight: 700; color: #fff; margin-bottom: 18px; }

.contacts__rows { display: grid; gap: 0; }
.contacts__rows > div {
  display: grid; grid-template-columns: minmax(160px, 220px) 1fr; gap: 16px;
  padding: 12px 0; border-top: 1px solid var(--white-10); font-size: 14px;
}
.contacts__rows > div:first-child { border-top: 0; }
.contacts__rows dt { color: var(--white-50); }
.contacts__rows dd { color: rgba(255, 255, 255, .9); overflow-wrap: anywhere; }
.contacts__rows dd span { color: var(--white-50); }
.contacts__rows a { color: var(--brand); }
.contacts__rows a:hover { text-decoration: underline; }

.contacts__note { margin-top: 18px; font-size: 13px; line-height: 1.7; color: var(--white-60); }
.contacts__note b { color: var(--brand); font-weight: 600; }

@media (max-width: 640px) {
  .contacts { margin-top: 28px; padding-bottom: 56px; }
  .contacts__legal { padding: 20px; }
  .contacts__rows > div { grid-template-columns: 1fr; gap: 4px; }
}
