:root {
  --ebci2-white: #ffffff;
  --ebci2-dark: #000000;
  --ebci2-primary: #1d3052;
  --ebci2-secondary: #f68322;
  --ebci2-gray: #cccccc;

  /* ============================= */
  --ebci2-space-sm: 0.5rem;
  --ebci2-space-md: 1.2rem;
  --ebci2-space-lg: 2rem;
  --ebci2-space-xl: 3rem;

  /* ================= */
  --ebci2-fs-md: 1.1rem;
  --ebci2-fs-lg: 1.125rem;
  --ebci2-fs-xl: 1.6rem;

  --fs-xs: 0.75rem; /* 12px */
  --fs-sm: 0.5rem; /* 14px */
  --fs-base: 1.2rem; /* 16px */
  --fs-md: 1.125rem; /* 18px */
  --fs-lg: 2rem; /* 20px */
  --fs-xl: 1.5rem; /* 24px */
  --fs-2xl: 2.2rem; /* 32px */
  --fs-3xl: 3rem; /* 40px */
  --fs-4xl: 3rem; /* 48px */
}

/* =================================  
   CONTACT SECTION
======================================== */

.contact-section {
  padding: 80px 0;
  background-color: var(--background);
  font-family: var(--font-family);
  width: 90%;
}

.contact-intro {
  text-align: center;
  margin-bottom: 50px;
}

.contact-main-title {
  font-size: var(--fs-2xl);
  color: var(--primary);
  margin: 0 0 12px;
  font-weight: 700;
  line-height: 1.3;
}

.contact-subtitle {
  color: var(--text);
  font-size: var(--fs-base);
  line-height: 1.7;
  max-width: 700px;
  margin: 0 auto;
}

.contact-grid {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 30px;
  align-items: stretch;
}

.contact-left {
  min-width: 0;
}

.map-wrapper {
  width: 100%;
  height: 100%;
  min-height: 350px;

  border-radius: 15px;
  overflow: hidden;

  background-color: var(--white);

  box-shadow: 0 10px 30px rgba(22, 58, 74, 0.08);
}

.map-wrapper iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 350px;
  border: 0;
}

.contact-right {
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: center;
}

.info-card {
  width: 100%;
  min-height: 100px;

  padding: 25px;

  background-color: var(--white);

  border-radius: 15px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 20px;

  box-sizing: border-box;

  text-decoration: none;
  color: inherit;

  box-shadow: 0 10px 25px rgba(22, 58, 74, 0.07);

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.info-card:hover {
  transform: translateX(-6px);

  box-shadow: 0 12px 30px rgba(22, 58, 74, 0.12);
}

.card-text {
  min-width: 0;
  text-align: left;
}

.card-text span {
  display: block;

  margin-bottom: 6px;

  font-size: var(--fs-xs);
  color: var(--secondary);

  line-height: 1.5;
}

.card-text strong {
  display: block;

  font-size: var(--fs-md);
  color: var(--primary);

  font-weight: 600;
  line-height: 1.5;

  word-break: break-word;
}

.card-icon-circle {
  width: 52px;
  height: 52px;

  flex-shrink: 0;

  border-radius: 50%;

  background-color: var(--accent);
  color: var(--white);

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: var(--fs-md);

  transition:
    transform 0.3s ease,
    background-color 0.3s ease;
}

.info-card:hover .card-icon-circle {
  transform: scale(1.05);
}

.whatsapp-bg {
  background-color: #25d366;
}

@media (max-width: 992px) {
  .contact-section {
    padding: 60px 0;
  }

  .contact-grid {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .map-wrapper {
    height: 350px;
    min-height: 350px;
  }

  .map-wrapper iframe {
    height: 350px;
    min-height: 350px;
  }

  .contact-right {
    gap: 15px;
  }
}

@media (max-width: 576px) {
  .contact-section {
    padding: 45px 0;
  }

  .contact-intro {
    margin-bottom: 35px;
  }

  .contact-main-title {
    font-size: var(--fs-xl);
  }

  .contact-subtitle {
    font-size: var(--fs-sm);
    padding: 0 15px;
  }

  .map-wrapper {
    height: 280px;
    min-height: 280px;
    border-radius: 12px;
  }

  .map-wrapper iframe {
    height: 280px;
    min-height: 280px;
  }

  .info-card {
    min-height: 90px;
    padding: 20px;
    border-radius: 15px;
  }

  .card-text span {
    font-size: var(--fs-xs);
  }

  .card-text strong {
    font-size: var(--fs-base);
  }

  .card-icon-circle {
    width: 46px;
    height: 46px;

    font-size: var(--fs-base);
  }
}
