/* Contact info — Figma 872:11231. Title, address, 2x2 icon contact grid. */

.contact-info {
  width: 100%;
}

.contact-info__body {
  display: grid;
  grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
  gap: var(--secan-space-2xl) var(--secan-space-8xl);
  align-items: start;
}

.contact-info__identity {
  display: flex;
  flex-direction: column;
  gap: var(--secan-space-s);
}

.contact-info__heading {
  margin: 0;
  font-family: var(--secan-font-heading);
  font-weight: var(--secan-fw-medium);
  font-size: var(--secan-fs-h3);
  line-height: var(--secan-lh-h3);
  color: var(--secan-black);
}

.contact-info__address {
  font-family: var(--secan-font-body);
  font-size: var(--secan-fs-body);
  line-height: var(--secan-lh-body);
  color: var(--secan-gray-dark);
}

.contact-info__address :first-child {
  margin-top: 0;
}

.contact-info__address :last-child {
  margin-bottom: 0;
}

.contact-info__grid {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--secan-space-l) var(--secan-space-2xl);
}

.contact-info__item {
  display: flex;
  align-items: center;
  gap: var(--secan-space-s);
  min-width: 0;
}

.contact-info__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: var(--secan-red);
  color: var(--secan-white);
}

.contact-info__icon svg {
  display: block;
  width: 20px;
  height: 20px;
}

.contact-info__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.contact-info__label {
  font-family: var(--secan-font-body);
  font-weight: var(--secan-fw-medium);
  font-size: var(--secan-fs-small);
  line-height: var(--secan-lh-small);
  color: var(--secan-red);
}

.contact-info__value {
  font-family: var(--secan-font-body);
  font-size: var(--secan-fs-body);
  line-height: var(--secan-lh-body);
  color: var(--secan-black);
  text-decoration: none;
  overflow-wrap: anywhere;
}

a.contact-info__value:hover {
  color: var(--secan-red);
  text-decoration: underline;
}

a.contact-info__value:focus-visible {
  outline: none;
  box-shadow: var(--secan-focus-ring);
  border-radius: 2px;
}

@media (max-width: 1023px) {
  .contact-info__heading {
    font-size: var(--secan-fs-h4);
    line-height: var(--secan-lh-h4);
  }

  .contact-info__body {
    grid-template-columns: 1fr;
    gap: var(--secan-space-l);
  }
}

@media (max-width: 600px) {
  .contact-info__grid {
    grid-template-columns: 1fr;
    gap: var(--secan-space-s);
  }
}
