.contact-section {
  background: rgba(var(--bg-color-26));
  /* padding: 80px 0; */
  position: relative;

  .contact-heading__info {
    display: flex;
    flex-direction: column;
    gap: 12px;

    .contact-section__heading {
      font-family: var(--font-source-serif-4);
      font-size: var(--font-9-2);
      font-weight: 700;
      line-height: 1.2;
      letter-spacing: var(--letter-spacing-2);
      color: rgba(var(--text-color-3));
      text-align: center;
    }

    .contact-section__subheading {
      font-size: var(--font-24);
      font-weight: 400;
      color: rgba(var(--text-color-32));
      line-height: 1.75;
      text-align: center;
      max-width: 635px;
      margin: 0 auto;
    }
  }

  .contact-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: 60px;

    .contact-card {
      background: rgba(var(--bg-color-1));
      border-radius: var(--border-radius-8);
      border-top: 1px solid rgba(var(--border-color-6), 0.12);
      box-shadow: 0px 6px 18px rgba(var(--bg-color-6), 0.06);
      padding: 33px;
      display: flex;
      flex-direction: column;
      gap: 14px;

      .contact-card__icon-wrap {
        width: 56px;
        height: 56px;
        border-radius: var(--border-radius-9);
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;

        svg,
        img {
          width: 26px;
          height: 26px;
        }
      }

      .contact-card__icon-wrap--dark {
        background: rgba(var(--bg-color-34), 28%);
      }

      .contact-card__icon-wrap--yellow {
        background: rgba(var(--bg-color-29));
      }

      .contact-card__icon-wrap--navy {
        background: rgba(var(--bg-color-6), 0.08);
      }

      .contact-card__title {
        font-family: var(--font-source-serif-4);
        font-size: var(--font-16);
        font-weight: 700;
        line-height: 1.3;
        color: rgba(var(--text-color-3));
      }

      .contact-card__body {
        font-family: var(--font-inter);
        font-size: var(--font-24);
        font-weight: 400;
        color: rgba(var(--text-color-9));
        line-height: 1.4;
        flex: 1;
      }

      .contact-card__action {
        font-size: var(--font-21);
        font-weight: 600;
        line-height: 1.3;
        color: rgba(var(--text-color-6));
        text-decoration: none;
        transition: color 0.2s ease;
        word-break: break-all;

        &:hover {
          color: rgba(var(--text-color-10));
        }
      }

      .office-hours-table {
        width: 100%;
        border-collapse: collapse;

        tr {
          font-size: var(--font-24);
          line-height: 1.4;
          padding: 9px 0;
          border-top: 1px dashed rgba(var(--border-color-6), 0.12);
          vertical-align: middle;
          font-weight: 700;
        }

        td {
          font-size: var(--font-24);
          line-height: 1.4;
          padding: 9px 0;
          border-top: 1px dashed rgba(var(--border-color-6), 0.12);
          vertical-align: middle;
          font-weight: 700;

          &:first-child {
            font-weight: 500;
            color: rgba(var(--text-color-6));
            width: 58%;
          }

          &:last-child {
            text-align: right;
          }
        }

        .hours__time {
          font-weight: 700;
          color: rgba(var(--text-color-9));
        }

        .hours__closed {
          font-weight: 600;
          color: rgba(var(--text-color-33));
        }

        .hours__day-bold {
          font-weight: 700;
        }
      }
    }
  }

  @media (max-width: 1280px) {
    .contact-cards {
      margin-top: 50px !important;

      .contact-card {
        padding: 24px !important;
      }
    }
  }

  @media (max-width: 1024px) {
    .contact-cards {
      margin-top: 40px !important;
      grid-template-columns: repeat(2, 1fr) !important;
    }
  }

  @media (max-width: 767px) {
    .contact-cards {
      margin-top: 30px !important;
      grid-template-columns: 1fr !important;
    }
  }
}